string[] arrr = { "a", "b", "c", "d" };
组合成不同的字符串比如
abc
bcd
acd
abd
ab
ac
ad
bc
bd
cd
a
b
c
d
解决方案 »
- 求高手帮忙解决:如何DataList的字段值???老提示System.EventArgs并不包含"Item"的定义
- asp.net 实现静态技术问题
- 关于三个页面之间参数传递保持不变的问题——————在线,等!
- 如何让系统上提供一个DOC文件,只能查看不能下载
- GridView如何绑定空的数组
- 大家帮忙啊,紧急问题
- dropdownlist怎么样设置部分可选,另一部分不可选??
- ************ 这个里面怎么让前台的隔列显示不同的颜色啊(DataList控件)
- 浮动窗口 IE下可以 火狐不可以 期待高手给看看
- 关于treeview一个问题?????
- asp.net怎么让页面关闭时触发一个事件操作数据库
- 【急急急】js传参问题
bcd
acd
abd
ab
ac
ad
bc
bd
cd
a
b
c
d有1个元素的组合也有2个arrr[i]
arrr[i]+arrr[j]
arrr[i]+arrr[j]+arrr[k]
List<string> lst = new List<string>();
for (int num = 1; num < ss.Length; num++)
{
for (int i = 0; i < ss.Length; i++)
{
string s = ss[i];
int j = 1;
while (num > j && (i + j) < ss.Length)
{ s += ss[i + j];
j++;
}
lst.Add(s);
}
}
lst.Sort();//排个序
{
string[] arry = { "a", "b", "c", "d" };
ArrayList al = new ArrayList();
string str;
bool flag = true;
for (int i = 0; i < 4; i++)
{
al.Add(arry[i].ToString()+"</br>");
for (int j =i+1; j < 4; j++)
{
al.Add(arry[i].ToString() +arry[j].ToString()+ "</br>");
for (int k = j+1; k < 4; k++)
{
al.Add(arry[i].ToString() + arry[j].ToString() + arry[k].ToString() + "</br>");
for (int s = k+1; s < 4; s++)
{
str = arry[i].ToString() + arry[j].ToString() + arry[k].ToString() + arry[s].ToString();
for (int p = 0; p < al.Count; p++)
{
if (str == al[p].ToString())
flag = false;
}
if (flag)
{
al.Add(str);
}
}
}
}
}
for (int p = 0; p < al.Count; p++)
{
Response.Write(al[p].ToString()+"</br>");
}
}
{
string[] arry = { "a", "b", "c", "d" };
ArrayList al = new ArrayList();
string str;
bool flag = true;
for (int i = 0; i < 4; i++)
{
al.Add(arry[i].ToString()+"</br>");
for (int j =i+1; j < 4; j++)
{
al.Add(arry[i].ToString() +arry[j].ToString()+ "</br>");
for (int k = j+1; k < 4; k++)
{
al.Add(arry[i].ToString() + arry[j].ToString() + arry[k].ToString() + "</br>");
for (int s = k+1; s < 4; s++)
{
str = arry[i].ToString() + arry[j].ToString() + arry[k].ToString() + arry[s].ToString();
for (int p = 0; p < al.Count; p++)
{
if (str == al[p].ToString())
flag = false;
}
if (flag)
{
al.Add(str);
}
}
}
}
}
for (int p = 0; p < al.Count; p++)
{
Response.Write(al[p].ToString()+"</br>");
}
}
select a,b,c,d from Table A,B,C,D 或者用CROSS JOIN
http://book.51cto.com/art/200806/75913.htm程序中可以考虑用递归
List<string> lst = new List<string>(); for (int i = 0; i < ss.Length; i++)
{
lst.Add(ss[i]);
int startNum = i ;
for (int j = startNum; j < ss.Length; j++)
{
string s = ss[i];
for (int l = 1; l < ss.Length; l++)
{
if (j + l < ss.Length)
{
s += ss[j + l];
lst.Add(s);
}
else
{
break;
}
}
}
}
lst.Sort();//排个序