Re: faster sublist checking
- To: mathgroup at smc.vnet.net
- Subject: [mg48719] Re: faster sublist checking
- From: koopman at sfu.ca (Ray Koopman)
- Date: Fri, 11 Jun 2004 03:52:54 -0400 (EDT)
- References: <ca6hlt$fgj$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
gimbo20032003 at libero.it (giorgio borghi) wrote in message news:<ca6hlt$fgj$1 at smc.vnet.net>... > which is the faster implementantion of function that checks if a list > A is a sublist of B. es: A={3,4,5} B={1,2,3,4,5,6,7} gives True? In[1]:= B = Table[Random[Integer],{1*^4}]; In[2]:= A = Table[Random[Integer],{10}] Out[2]= {1,0,0,1,1,0,1,0,0,0} This is equivalent to Jens-Peer's probably-shortest solution: In[3]:= MatchQ[B,{__,Sequence@@A,__}] //Timing Out[3]= {17.2419 Second,True} This is almost as short, and much faster: In[4]:= MemberQ[Partition[B,Length[A],1],A] //Timing Out[4]= {0.999832 Second,True}