열혈 자료구조

    [Data Structures][02-2] 재귀의 활용

    본 글은 윤성우의 열혈 자료구조 책을 읽고, 강의를 수강하고 복습한 것을 기록한 글입니다. 강의 교안 또한 참고하여 작성하였습니다. (강의 교안의 경우 오렌지 미디어에서 다운로드할 수 있습니다) 목차 Chapter 02. 재 귀(Recursion) Chapter 02-2: 재귀의 활용 - 피보나치 수열 - 이진 탐색 알고리즘의 재귀 구현 재귀의 활용 피보나치 수열 이해 저자는 호출 순서보다 호출 관계에 더 집중하자고 한다. 하노이 타워의 경우는 호출 관계도 어려운데 호출 순서는 더더욱 어렵다고 한다. 예시로는 피보나치수열이 있다. 문제 해결의 논리를 정확하게 파악하고 그 부분을 정확하게 잡아서 해결해야 한다. 그것이 재귀 문제의 핵심 키이다. 피보나치 수열 0, 1, 1, 2, 3, 5, 8, 13, 2..

    [Data Structures][02-1] 함수의 재귀적 호출의 이해

    본 글은 윤성우의 열혈 자료구조 책을 읽고, 강의를 수강하고 복습한 것을 기록한 글입니다. 강의 교안 또한 참고하여 작성하였습니다. (강의 교안의 경우 오렌지 미디어에서 다운로드할 수 있습니다) 목차 Chapter 02. 재 귀(Recursion) Chapter 02-1: 함수의 재귀적 호출의 이해 - 재귀 함수의 기본적인 이해 - 재귀 함수의 디자인 사례 - 팩토리얼의 재귀적 구현 함수의 재귀적 호출의 이해 재귀 함수의 기본적인 이해 재귀 함수의 호출 원리는 컴퓨터 구조상에서 내가 만든 명령문, 즉 재귀 함수의 복사본이 계속 호출되는 것이다. 재진입이 아니라 계속 원본에서 복사본을 호출하는 것이다. 재귀 함수의 간단한 예 void Recursive(int num) { if(num