Re: Re: rule based program for "Deleting repeated members of a list."
- To: mathgroup at smc.vnet.net
- Subject: [mg81967] Re: [mg81938] Re: rule based program for "Deleting repeated members of a list."
- From: DrMajorBob <drmajorbob at bigfoot.com>
- Date: Mon, 8 Oct 2007 00:00:10 -0400 (EDT)
- References: <fe7j44$qga$1@smc.vnet.net> <8456040.1191774819207.JavaMail.root@m35>
- Reply-to: drmajorbob at bigfoot.com
Split[s][[All,1]] will be faster (for huge lists) than First/@Spit[s]. Bobby On Sun, 07 Oct 2007 04:30:44 -0500, Szabolcs Horvát <szhorvat at gmail.com> wrote: > mumat wrote: >> Hi, >> >> I have a list s={a,b,c,c,d,e,e,f,g,g,g,h,a,b}; >> >> I need to write a program so that it reads the list and ignors >> repeated elements; so it outputs the following: >> >> RepeatRemover[s]={a,b,c,d,e,f,g,h,a,b}; >> >> I am looking for a rule-based program to do this! >> >> Any help would be greatly appreciated. > > Why do you insist on a "rule-based" solution? > > The obvious (and efficient) solution is > First /@ Split[s] > > An inefficient replacement-rule-based solution is > s //. {be___, x_, x_, en___} -> {be, x, en} > -- DrMajorBob at bigfoot.com