부경대학교 권오흠 교수님의 '영리한 프로그래밍을 위한 알고리즘 강좌' Recursion vs. Iteration 모든 순환 함수는 반복문(iterator)으로 변경 가능 모든 반복문은 순환 함수로 변경 가능 순환함수는 복잡한 알고리즘을 단순하게 표현하는 것이 가능하지만, 함수 호출에 따른 오버해드가 있다. (매개변수 전달, 액티베이션 프레임 생성 등) 순환적 알고리즘 설계 암시적 매개변수(시작 지점을 암시적으로 0부터라고 하는 것)에서 명시적 매개변수(시작과 끝을 정확히 나타내는 것)로 바꾸어라 이진 탐색: Iterator(반복문 버전) public int binarySearch(int data[], int n, int target) { int begin = 0, end = n - 1; // 시작과 끝 ..