组合数量 [英] Number of combinations

查看:72
本文介绍了组合数量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我的数组如下:

arr1 = {a,b,c}

arr2 = {1,2, 3}

arr3 = {x,y,z}


我想得到这些数组的组合,如下所示

arr_result = {a1x,a1y,a1z,a2x,a2y,a2z,a3x,a3y,

a3z,

b1x,b1y,b1z,b2x,b2y,b2z, ; B3X" ;,

" b3y"," B3Z" ;,

" C1X"," C1Y"," C1Z"," C2X" ;, " c2y"," c2z"," c3x",

" c3y"," c3z"}


感谢有人可以提供帮助用例子算法。


谢谢!

Hi,
I have arrays below:
arr1 = { a, b, c}
arr2 = {1, 2, 3}
arr3 = {x, y, z}

I want to get a combination of these array, as below

arr_result = { "a1x", "a1y", "a1z", "a2x", "a2y", "a2z", "a3x", "a3y",
"a3z",
"b1x", "b1y", "b1z", "b2x", "b2y", "b2z", "b3x",
"b3y", "b3z",
"c1x", "c1y", "c1z", "c2x", "c2y", "c2z", "c3x",
"c3y", "c3z"}

appreciate if someone can help with example algorithm.

Thanks!

推荐答案

6月14日,12:16 pm,csfon ... @ gmail.com写道:
On Jun 14, 12:16 pm, csfon...@gmail.com wrote:



我有以下数组:

arr1 = {a,b,c}

arr2 = {1,2,3}

arr3 = {x,y,z}


我想得到这些数组的组合,如下所示


arr_result = {" a1x"," a1y"," a1z"," a2x"," a2y"," a2z"," a3x"," a3y",

" A3Z" ;,

" B1X"," B1Y"," b1z"," B2X"," B2Y"," b2z"," B3X" ,

" b3y"," B3Z" ;,

" C1X"," C1Y"," C1Z"," C2X"," C2Y" ;,c2z,c3x,

" c3y"," c3z"}

感谢有人可以提供示例算法帮助。


谢谢!
Hi,
I have arrays below:
arr1 = { a, b, c}
arr2 = {1, 2, 3}
arr3 = {x, y, z}

I want to get a combination of these array, as below

arr_result = { "a1x", "a1y", "a1z", "a2x", "a2y", "a2z", "a3x", "a3y",
"a3z",
"b1x", "b1y", "b1z", "b2x", "b2y", "b2z", "b3x",
"b3y", "b3z",
"c1x", "c1y", "c1z", "c2x", "c2y", "c2z", "c3x",
"c3y", "c3z"}

appreciate if someone can help with example algorithm.

Thanks!






也许:


string s [] = new string [arr1.Length * arr2.Length * arr3.Length];


for(int i = 0; i< arr1.Length; ++ i)

for(int j = 0; j< arr1.Length; ++ j)

for(int k = 0; k< arr1.Length; ++ k)

s [i + j + k] = String.Concat(s [i],s [j],s [k]);


希望这会有所帮助。

Moty

Hi,

Maybe:

string s[] = new string[arr1.Length*arr2.Length*arr3.Length];

for( int i=0; i<arr1.Length; ++i )
for( int j=0; j<arr1.Length; ++j )
for( int k=0; k<arr1.Length; ++k )
s[i+j+k] = String.Concat(s[i], s[j], s[k]);

Hope this helps.
Moty


2007年6月14日星期四17:32:50 + 0800£?Moty Michaely< Mo ***** @ gmail.com>

写道:
At Thu, 14 Jun 2007 17:32:50 +0800£?Moty Michaely <Mo*****@gmail.com>
wrote:

6月14日下午12:16,csfon ... @ gmail.com写道:
On Jun 14, 12:16 pm, csfon...@gmail.com wrote:

>
我的数组如下:
arr1 = {a,b,c}
arr2 = {1, 2,3}
arr3 = {x,y,z}
我想得到这些数组的组合,如下所示

arr_result = {" a1x,a1y,a1z,a2x,a2y,a2z,a3x, a3y" ;,
" A3Z" ;,
" B1X"," B1Y"," b1z"," B2X"," B2Y"," b2z"," B3X" ,
" b3y"," B3Z" ;,
" C1X"," C1Y"," C1Z"," C2X"," C2Y"," C2Z"," ; c3x",
" c3y"," c3z"}

感谢有人可以提供示例算法的帮助。

谢谢!
>Hi,
I have arrays below:
arr1 = { a, b, c}
arr2 = {1, 2, 3}
arr3 = {x, y, z}

I want to get a combination of these array, as below

arr_result = { "a1x", "a1y", "a1z", "a2x", "a2y", "a2z", "a3x", "a3y",
"a3z",
"b1x", "b1y", "b1z", "b2x", "b2y", "b2z", "b3x",
"b3y", "b3z",
"c1x", "c1y", "c1z", "c2x", "c2y", "c2z", "c3x",
"c3y", "c3z"}

appreciate if someone can help with example algorithm.

Thanks!






也许:


string s [] = new string [arr1.Length * arr2.Length * arr3.Length];


for(int i = 0; i< arr1.Length; ++ i)

for(int j = 0; j< arr1.Length; ++ j)

for(int k = 0; k< arr1.Length; ++ k)

s [i + j + k] = String.Concat(s [i],s [j],s [k]);


希望这会有所帮助。

Moty


Hi,

Maybe:

string s[] = new string[arr1.Length*arr2.Length*arr3.Length];

for( int i=0; i<arr1.Length; ++i )
for( int j=0; j<arr1.Length; ++j )
for( int k=0; k<arr1.Length; ++k )
s[i+j+k] = String.Concat(s[i], s[j], s[k]);

Hope this helps.
Moty



您的代码可能有误,尤其是s的索引。

我认为它应该是这样的:


s [i * arr2.Length * arr3.Length + j * arr3.Length + k] =

String.Concat(arr1 [i],arr2 [j] ,arr3 [k]);


-

最好的问候。

Maple

Your code maybe wrong, especially the index of s.
I think it should be this:

s[i * arr2.Length * arr3.Length + j * arr3.Length + k] =
String.Concat(arr1[i], arr2[j], arr3[k]);

--
Best Regards.
Maple




< cs ****** @ gmail.comwrote in message

news:11 ********** ************@x35g2000prf.googlegr oups.com ...

<cs******@gmail.comwrote in message
news:11**********************@x35g2000prf.googlegr oups.com...



我有下面的数组:

arr1 = {a,b,c}

a rr2 = {1,2,3}

arr3 = {x,y,z}


我想得到这些数组的组合,如下所示


arr_result = {" a1x"," a1y"," a1z"," a2x"," a2y"," a2z"," a3x", a3y,

" a3z",

" b1x"," b1y"," b1z"," b2x"," b2y" ," b2z"," B3X" ;,

" b3y"," B3Z" ;,

" C1X"," C1Y"," C1Z" ;,c2x,c2y,c2z,c3x,

" c3y"," c3z"}

$ b如果有人可以帮助使用示例算法,$ b会感激。
Hi,
I have arrays below:
arr1 = { a, b, c}
arr2 = {1, 2, 3}
arr3 = {x, y, z}

I want to get a combination of these array, as below

arr_result = { "a1x", "a1y", "a1z", "a2x", "a2y", "a2z", "a3x", "a3y",
"a3z",
"b1x", "b1y", "b1z", "b2x", "b2y", "b2z", "b3x",
"b3y", "b3z",
"c1x", "c1y", "c1z", "c2x", "c2y", "c2z", "c3x",
"c3y", "c3z"}

appreciate if someone can help with example algorithm.



三个嵌套的for loop shoud给出你想要的结果:


string [] arr_result = new string [arr1.Length + arr2.Length + arr3.Length];

int i = 0;

foreach(arr1中的字符串s1)

foreach(strr s2 in arr2)

foreach(arr3中的字符串s3)

arr_result [i ++] = s1 + s2 + s3;

Three nested "for" loops shoud give the result that you want:

string[] arr_result = new string[arr1.Length+arr2.Length+arr3.Length];
int i=0;
foreach (string s1 in arr1)
foreach (strng s2 in arr2)
foreach (string s3 in arr3)
arr_result[i++]=s1+s2+s3;


这篇关于组合数量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆