111,120
社区成员
发帖
与我相关
我的任务
分享
private StringBuilder RepComponent(string str,StringBuilder sRet)
{
if (str.Length <= 1)
return sRet;
string s = str.Substring(0, 1);
for (int i = 1; i < str.Length; i++)
{
sRet.Append(s + str[i] + ",");
}
if (str.Length > 2)
{
sRet.Append(str + ",");
}
sRet = RepComponent(str.Substring(1), sRet);
return sRet;
}
string[] str = { "", "a", "b", "c", "d", "e","f","g" };
string[] str = { "", "a", "b", "c", "d", "e","f",g" };
int L = str.Length - 1;
string T = "";
for (int i = 1; i < L; i++)
{
T = str[i];
for (int j = i; j < L; j++)
{
if (j > i) T += str[j];
for (int k = j; k < L; k++)
Console.WriteLine(T + str[k + 1]);
}
}
string str = "ABCDEFG";
for (int num = 1; num < str.Length; num++)
{
for (int i = 0; i < str.Length; i++)
{
for (int j = i + 1; j < str.Length; j++)
{
int count = num - 1 + j;
if (count < str.Length)
Console.WriteLine(str.Substring(i, num) + str.Substring(count, 1));
}
}
}
/*
------输出结果------------
AB
AC
AD
AE
AF
AG
BC
BD
BE
BF
BG
CD
CE
CF
CG
DE
DF
DG
EF
EG
FG
ABC
ABD
ABE
ABF
ABG
BCD
BCE
BCF
BCG
CDE
CDF
CDG
DEF
DEG
EFG
ABCD
ABCE
ABCF
ABCG
BCDE
BCDF
BCDG
CDEF
CDEG
DEFG
ABCDE
ABCDF
ABCDG
BCDEF
BCDEG
CDEFG
ABCDEF
ABCDEG
BCDEFG
ABCDEFG
*/
static string[] m_Data = { "A", "B", "C", "D", "E" };
static void Main(string[] args)
{
Dictionary<string, int> dic = new Dictionary<string, int>();
for (int i = 0; i < m_Data.Length; i++)
{
dic.Add(m_Data[i], i);
}
GetString(dic);
Console.ReadLine();
}
static void GetString(Dictionary<string, int> dd)
{
Dictionary<string, int> dic = new Dictionary<string, int>();
foreach (KeyValuePair<string, int> kv in dd)
{
for (int i = kv.Value + 1; i < m_Data.Length; i++)
{
//Console.WriteLine(kv.Key + " " + kv.Value + " " + i);
Console.WriteLine(kv.Key + m_Data[i]);
dic.Add(kv.Key + m_Data[i], i);
}
}
//Console.WriteLine(dic.Count);
if (dic.Count > 0) GetString(dic);
}
================================
运行结果:
A
B
C
D
E
AB
AC
AD
AE
BC
BD
BE
CD
CE
DE
ABC
ABD
ABE
ACD
ACE
ADE
BCD
BCE
BDE
CDE
ABCD
ABCE
ABDE
ACDE
BCDE
ABCDE