Find 625 consecutive ones in vector

2 visualizzazioni (ultimi 30 giorni)
Sam
Sam il 24 Mar 2020
Modificato: John D'Errico il 24 Mar 2020
Hello,
I have a 45000x1 rowvector, which contains only 1's and 0's. I want to find the periods of 625 consecutive ones and locations of these 1's in this vector. Can anyone help?
Thank you.
  2 Commenti
Sean de Wolski
Sean de Wolski il 24 Mar 2020
Modificato: Sean de Wolski il 24 Mar 2020
Exactly 625 or >=625?
John D'Errico
John D'Errico il 24 Mar 2020
Modificato: John D'Errico il 24 Mar 2020
As Sean points out, the difference might change how one solves the problem. Do you want to find ALL occurrences of exactly 625 ones? What if there is a string of length 626? Does that correspond to two sustrings of length 625, one starting one element further down the line? Or is that just one string, that happens to satisfy the goal? What if there was a string of length 1250? Is that two consecutive strings of length 625? Or is it 625 strings of length 625 that overlap, or is it just one string?

Accedi per commentare.

Risposta accettata

Ameer Hamza
Ameer Hamza il 24 Mar 2020
Modificato: Ameer Hamza il 24 Mar 2020
The following code will find 3 consecutive ones in an input array and output the starting index of each occurrence
x = [0 1 1 1 0 0 1 1 0 1 1 1 0 1];
index = strfind(x, [1 1 1]);
output
index =
2 10

Più risposte (0)

Categorie

Scopri di più su Variables in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by