Queue로 이진수 만들기
문제
양의 정수 n이 주어질 때 1부터 n까지의 십진수를 이진수로 출력하라.
1. 내장함수 풀기
| 1 | def generate_binary(n): | 
2. 큐를 사용하여 풀기
문제를 분석해보면, 2의 이진수는 10이고 3의 이진수는 11이다.
이는 1에다가 0과 1을 붙인 것이다.
4의 이진수는 100이고 5의 이진수는 101이다. 이는 2의 이진수 10에다가 0과 1을 추가한 것이다.
앞서 사용한 숫자에 0과 1을 붙인 이진수가 나중에 사용된다.
- 큐를 하나 생성하고 - 1을 삽입한다.
- n만큼 반복한다. - 큐에서 꺼낸 값을 i에 저장
- i에 0과1을 붙인 이진수를 큐에 삽입
- i를 출력
 
| 1 | def generate_binary_queue(n): |