Re: Q: efficient list operation wanted

• To: mathgroup at smc.vnet.net
• Subject: [mg13981] Re: [mg13973] Q: efficient list operation wanted
• From: BobHanlon at aol.com
• Date: Sat, 12 Sep 1998 16:59:07 -0400
• Sender: owner-wri-mathgroup at wolfram.com

```L1 = {1, 2, 3, 4, 5, 3, 7, 2, 3, 9}; L2 = {a, b, c};

n=0;
L1 /. (x_/;x==3) :> (n++; L2[[n]])

{1,2,a,4,5,b,7,2,c,9}

Bob Hanlon

In a message dated 9/11/98 7:54:56 PM, k.duellmann at uni-mannheim.deXXX
wrote:

>I am looking for an efficient solution of the following problem:
>
>Given two lists L1 = {1,2,3,4,5,3,7,2,3,9} and L2 = {a, b, c}
>
>I want to replace all numbers 3 in L1 by the elements of L2
>successively,
>that is the first 3 by a, the second 3 by b and the third 3 by c. That
>is I want to get the following modified L1-list: {1,2,a,4,5,b,7,2,c,9}.
>
>Replace[] unfortunately replaces elements with a single element only. Is
>there a chance to avoid hideous Do-Loops?
>
>Any hints are appreciated!

```

• Prev by Date: Re: Q: efficient list operation wanted
• Next by Date: Re: Piecewise function integrated thrice
• Previous by thread: Re: Q: efficient list operation wanted
• Next by thread: Re: Q: efficient list operation wanted