2. 이진수 출력 (재귀)

2023. 11. 13. 19:52·알고리즘/Recursive, Tree, Graph(DFS, BFS 기초)

1. 문제

10진수 N이 입력되면 2진수로 변환하여 출력하는 프로그램을 작성하세요.

단 재귀함수를 이용하시오.

 

 

2 - 1. 나의 풀이

이전 문제에서 재귀함수를 호출할때 코드 순서에 따라서

호출한 순서대로 리턴 값이 나오는지, 호출한 순서 반대로 리턴 값이 출력되는지 알 수 있었다.

 

10진수를 2진수로 변환하는 수학적 방식을 생각해보자 (10진수 13을 예시로)

1. 13을 2로 계속 나눈다.

2. 나눴을 때 나머지를 역순으로 출력한다.

 

13 ㅡ> 몫: 6, 나머지: 1 ㅡ>몫: 3, 나머지: 0 ㅡ> 몫: 1, 나머지: 1 ㅡ> 몫: 0, 나머지 :1

나머지를 역순으로 출력하면 1101로 2진수 변환이 된다.

 

즉, 재귀함수를 먼저, 그 리턴값을 다음 코드에 작성하면 된다.

 

2- 2. 나의 코드

package BFS_DFS;
import java.util.*;

public class dfs02 {
    private static void dfs(int n) {
        if(n==0) return;
        else{
        dfs(n/2);
        System.out.print(n%2);
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        dfs(n);
    }
}

 

3. 강의

나와 같다.

 

4. 얻어갈 점

1. 순서에 따른 출력 값

'알고리즘 > Recursive, Tree, Graph(DFS, BFS 기초)' 카테고리의 다른 글

6. 부분 집합 구하기(DFS)  (0) 2023.11.16
5. 이진트리순회(DFS: Depth - First - Searching)  (1) 2023.11.15
4. 피보나치 재귀(메모이제이션)  (0) 2023.11.14
3. 팩토리얼 (재귀)  (0) 2023.11.14
1. 재귀함수 (스택프레임) 중요!  (0) 2023.11.09
'알고리즘/Recursive, Tree, Graph(DFS, BFS 기초)' 카테고리의 다른 글
  • 5. 이진트리순회(DFS: Depth - First - Searching)
  • 4. 피보나치 재귀(메모이제이션)
  • 3. 팩토리얼 (재귀)
  • 1. 재귀함수 (스택프레임) 중요!
송우석입니다
송우석입니다
  • 송우석입니다
    송우석
    송우석입니다
  • 글쓰기 관리
  • 전체
    오늘
    어제
    • 분류 전체보기 (136) N
      • JAVA (1)
      • 알고리즘 (83) N
        • 백준 (8)
        • String(문자열) (12) N
        • Array(1, 2차원 배열) (12)
        • Two pointers, Sliding windo.. (6)
        • HashMap, TreeSet(해쉬, 정렬지원 S.. (5)
        • Stack, Queue(자료구조) (8)
        • Sorting and Searching(정렬, 이.. (10)
        • Recursive, Tree, Graph(DFS,.. (14)
        • DFS, BFS 활용 (6)
        • 다시 시작! (1)
        • 기초 수학 (1) N
      • 일상 (19)
      • Github (1)
      • MSA 공부 (3)
      • 경제, 금융, 디지털, 시사 (3)
      • 라즈베리파이 (10)
      • 프로젝트에서 일어난 일 (13)
      • FrontEnd 공부 (3) N
        • React (2) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
송우석입니다
2. 이진수 출력 (재귀)
상단으로

티스토리툴바