Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2006
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: finding the position of a pattern in list

  • To: mathgroup at smc.vnet.net
  • Subject: [mg64663] Re: finding the position of a pattern in list
  • From: "Ray Koopman" <koopman at sfu.ca>
  • Date: Sat, 25 Feb 2006 02:53:26 -0500 (EST)
  • References: <dtm5mr$hfj$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Bob Hanlon wrote:
> Here is a faster method than the one that I first suggested.
>
> pos1[data_]:=Position[Partition[data,2,1],{0,1}]//Flatten;
>
> pos2[data_]:=Position[RotateLeft[data]-data,1]//Flatten;
>
> data=Table[Random[Integer],{100000}];
>
> pos1[data]==pos2[data]
>
> True

Whenever data has a leading 1 and a trailing 0, pos2 will include
the index of the last position, which pos1 will never do.

pos1[{1,0}]
pos2[{1,0}]
{}
{2}


  • Prev by Date: Re: Plot -> axes inversion
  • Next by Date: autogenerated packages carriage returns and line feeds
  • Previous by thread: Re: finding the position of a pattern in list
  • Next by thread: Re: finding the position of a pattern in list