인생은 파도타기

  • 홈
  • 태그
  • 방명록

재귀알고리즘 1

알고리즘 공부 - 재귀함수 2편(하노이의 탑, 재귀 제거)

이번 포스팅에선 지난 재귀함수 1편에 이어서 공부해보겠습니다! 재귀함수를 제거하거나 비재귀적으로 표현하려면 어떻게 해야할까요? 꼬리 재귀의 제거 메서드의 꼬리에서 재귀 호출하는 메서드 recur(n-2)라는 말은 '인자로 n-2를 전달하여 recur 메서드를 호출한다.' 는 의미 입니다. 따라서 이 호출은 다음과 같이 바꿀 수 있습니다. n 의 값을 n - 2로 업데이트하고 메서드의 시작 지점으로 돌아갑니다. static void recur(int n) { while (n > 0) { recur(n - 1); System.out.println(n); n = n-2; } } 이렇게 하면 메서드의 끝에서 실행하는 꼬리 재귀(tail recursion) 는 쉽게 제거할 수 있습니다. 일반 재귀의 제거 그런데 ..

Programming/Computer Science 2022.08.07
이전
1
다음
더보기
프로필사진

개발자의 웹서핑, 기술 블로그

  • 생각하기 (96)
    • Hobby (1)
    • Study (4)
      • 가상 면접 사례로 배우는 대규모 시스템 설계 기초 (1)
      • Redis (2)
    • Living (4)
    • Programming (6)
      • JAVA (16)
      • Kotlin (2)
      • Spring (15)
      • Project (2)
      • GO (3)
      • JavaScript (2)
      • CondingTest (14)
      • Computer Science (16)
      • Linux (3)
      • Docker (4)
      • Database (2)

최근글과 인기글

  • 최근글
  • 인기글

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바