많은 기능을 사용하지 않고 하나의 기능을 사용하는 데 문제가 있습니다.순열 반복과 반복 알고리즘
2^3 같은 반복과 함께 순열을 얻고 싶다면. permutations with repeats
는 얻을 :
000
001
101
011
100
101
110
111
내가이 기능을 가질 수 있습니다
static void Main(string[] args)
{
three_permutations(2);
Console.ReadLine();
}
static void three_permutations(int y)
{
for (int aa = 0; aa < y; aa++)
{
for (int bb = 0; bb < y; bb++)
{
for (int cc = 0; cc < y; cc++)
{
Console.Write((aa));
Console.Write((bb));
Console.Write((cc));
Console.WriteLine();
}
}
}
}
을하지만 4 (같은 2^4) 내가 생각할 수있는 유일한 방법은 이것이다 할 :
static void four_permutations(int y)
{
for (int aa = 0; aa < y; aa++)
{
for (int bb = 0; bb < y; bb++)
{
for (int cc = 0; cc < y; cc++)
{
for (int dd = 0; dd < y; dd++)
{
Console.Write((aa));
Console.Write((bb));
Console.Write((cc));
Console.Write((dd));
Console.WriteLine();
}
}
}
}
}
그러나 재귀를 사용하면 더 좋은 방법이있을 것이라고 확신합니다. 그것을 어떻게하는지. 어떤 도움을 주셔서 감사합니다. 감사.
제목을 편집했습니다. "[제목에"태그 "가 포함되어 있어야합니까?] (http://meta.stackexchange.com/questions/19190/)"합의가 "아니오, 그렇지 않아야합니다"로 표시되어야합니다. –
http://en.wikipedia.org/wiki/Permutations에서 링크를 확인하십시오. 순열에 대한 많은 양의 인쇄물과 온라인 정보가 있으므로 기존 지식 체계를 검색하는 것이 좋습니다. –