Re: combinations
- To: mathgroup at smc.vnet.net
- Subject: [mg16836] Re: combinations
- From: tobiasoed at my-dejanews.com
- Date: Thu, 1 Apr 1999 21:35:17 -0500
- Organization: Deja News - The Leader in Internet Discussion
- Sender: owner-wri-mathgroup at wolfram.com
"R.B." <raulber at teleline.es> wrote >Hi. How can i get a list of combinations for a group of 'm' elements taken >of 'n' in 'n', using mathematica 2.2. >Thanks This does the job: TakeOneMore[result_,RestElements_]:=Module[{element}, Map[(element=#;Map[Append[#,element]&,result])&,RestElements] ] TakeNrecurse[n_,result_,RestElements_]:=( Flatten[ MapIndexed[ TakeNrecurse[n-1,#,Drop[RestElements,First[#2]]]& , TakeOneMore[result,Drop[RestElements,-(n-1)]] ] , 1 ] ) TakeNrecurse[1,result_,RestElements_]:=Flatten[TakeOneMore[result,RestElements],1] TakeN[n_,AllElements_]:=TakeNrecurse[n,{{}},AllElements] Here is an example: In[7]:= TakeN[3,{a,b,c,d,e}] Out[7]= {{a, b, c}, {a, b, d}, {a, b, e}, {a, c, d}, {a, c, e}, {a, d, e}, {b, c, d}, > {b, c, e}, {b, d, e}, {c, d, e}} enjoy Tobias -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own