TDL
NOTE2
자료구조의 활용
Searching 검색
Recursion 재귀
재귀로 문제 해결하기
분할정복법
재귀의 조건(규칙)
1) base case(기본 조건)이 있어야한다.
- 알고리즘은의 반복을 중지할 수 있다.
2) 추가조건과 기본 케이스의 차이를 확인한다.
3) 반드시 자기 자신(함수)를 호출해야 한다.
트리(Tree)
binary tree(이진트리)
: 노드별로 최대 2개의 서브 노드를 갖는 것. (left, right
이진트리의 종류
1) 포화 이진 트리
2) 완전 이진 트리
노드가 위에서 아래로 채워짐
노드가 왼쪽에서 오른쪽 순서대로 채워짐
3) 이진 검색 트리 (Binary Search Trees, BST)
노드를 정확하게 정렬하는 특정 유형의 이진 트리.
값 크기 조건 : right child > root node > left child (중복값x)
검색하는 순서에 따라 노드값을 오름차순으로 얻는다
검색이 쉽기 때문에 노드를 삽입하기 쉽다.
천천히 소스코드의 흐름과 이론에서의 흐름을 매핑하면서 이해하는 것이 중요하다.
자료구조의 연결리스트, 큐, 스택을 구현한 로직과 비슷한 맥락
로직에 따라 값을 교환하는 흐름을 봐야한다.