2013-04-14 2 views
1

1이 유일한 n 자리 숫자입니다. 가능한 모든 조합에서 1을 0으로 바꾸고 조합을 배열에 저장하려고합니다. 모든 조합을 찾으려면 어떻게해야하나요? 0으로 시작한 다음 1을 대체 할 0이면 숫자를 늘리는 것이 좋습니다. 예를 들어, 2 개의 0이있는 경우, 1 개의 제로의 위치를 ​​고정 해, 다른 것을 이동해, 마지막에이를 때까지, 다른 제로에 대해서도 동일하게합니다. 그런데 반복 조합을 근절해야 할 것입니다. 기본적으로 복잡해지고 있습니다. 나는 조합을 찾는 더 좋은 방법을 알고 싶다!조합 찾기 및 저장

+3

인쇄 숫자 0에서 2까지^n (n)의 숫자는 귀하의 답입니다. –

답변

3

단순히 n-digit binary numbers을 생성하려고합니다. 2^n 다른 숫자를 생성 할 수 있다는 의미입니다. 그래서 여기에 가서 :

  • 먼저 2^n을 계산하십시오.
  • 0에서 시작하여 2^n에서 끝나는 루프를 구현하십시오.
  • 모든 루프 변수에 대해 변수를 소수로 가져와 바이너리로 변환하고 필요한 경우 앞에 오는 0을 추가하여 길이로 만듭니다.
  • 순열 배열에 바이너리를 추가하십시오.
+0

필요하면 길이가 n 인 문자를 추가 할 수 있습니까? – user2278992