MathGroup Archive 2002

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

Search the Archive

Re: Keeping order with Union

  • To: mathgroup at smc.vnet.net
  • Subject: [mg32605] Re: [mg32590] Keeping order with Union
  • From: BobHanlon at aol.com
  • Date: Thu, 31 Jan 2002 01:45:32 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

In a message dated 1/30/02 4:26:36 AM, dsnead6 at charter.net writes:

>I'd like a function that throws out duplicate entries in a list and keeps
>the
>original list order.  (when it sees 2 equal entries it throws out the one
>that is later in the list).   I'd use Union, but it sometimes changes the
>order of the elements in the list.  What's the tersest way to do this?
>

elimDupes[x_List] :=
 
    (x//.{s___,e_,i___,e_,f___} :>{s,e,i,f});

origList = {b,b,c,a,c,a,b,d};

Union[origList]

{a, b, c, d}

elimDupes[origList]

{b, c, a, d}


Bob Hanlon
Chantilly, VA  USA


  • Prev by Date: Re: mice wheels
  • Next by Date: Re: Keeping order with Union
  • Previous by thread: Re: Keeping order with Union
  • Next by thread: Re: Keeping order with Union