꿈꾸는개발자

  • 홈
  • 태그
  • 방명록

일반재귀 1

[Java] 재귀함수 / 일반재귀 vs 꼬리재귀 / 언어별 꼬리 재귀 최적화 / 연결리스트 꼬리재귀 코드

학습목표 재귀적인 문제 해결 방법 일반 재귀와 꼬리 재귀의 차이를 이해하는가? 여러분이 사용하는 프로그래밍 언어가 꼬리 재귀 최적화를 제공하는지 아니라면 왜 못하는지 학습하세요. 자바 / Nodejs / Golang 연결 리스트를 꼬리부터 머리까지 출력하는 코드를 작성하라. 재귀적인 문제 해결 방법 1) 반복되는 로직을 확인하여 작게 구분하여 재귀함수를 만든다 → 왠만한 반복문은 재귀함수로 작성 가능하다. 2) 종료조건을 명시한다. (f(0),f(1) 아 이게 종료조건이구나.) 장점 가독성이 좋음 코드가 짧음 각 단계의 변수 상태가 자동 저장됨. 코드 검증도 쉬움 단점 재귀적 문제 분석/설계가 안 직관적 맹목적인 믿음이 필요 스택 오버플로 발생 가능 함수 호출에 따른 과부하(모든 함수 호출에는 성능저하가..

Backend/Java 2022.02.20
이전
1
다음
더보기
프로필사진

꿈꾸는개발자

  • 분류 전체보기 (33)
    • Backend (27)
      • Java (23)
      • Spring (0)
      • SpringBoot (1)
      • Golang (3)
    • Frontend (0)
      • Javascript (0)
    • DB (2)
      • Mysql (1)
      • Oracle (1)
    • DevOps (2)
      • Git (1)
      • Kubernetes (1)
    • Computer Science (1)

Tag

멀티스레드, Java, 비교연산자, tailrecursive, 연결리스트의중간노드찾기, kotlinstudy, 자바, 자바직렬화, LRU캐시, 커스텀직렬화, Recursivecall, 코틀린완벽가이드, tailcalloptimization, 코틀린스터디, 논리연산자, 애노테이션, 커스텀역직렬화, 멀티쓰레드, 일반재귀, golang,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

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.

티스토리툴바