DFS를 통한 문제해결
BFS를 2번 수행하여 문제해결
BOJ 1167 : 트리의 지름 (1)문제에서 입력받는 부분만 수정해주고 마찬가지로 BFS를 2번 수행하면 해결이 가능하다.
바이너리 트리는 data, left, right 멤버를 가진 노드 클래스를 생성하면 문제를 쉽게 다룰 수 있다.
👉 백준 2263: 트리의 순회 중위 순회와 후위 순회의 특징을 캐치하여서 트리를 구성해도 되고,바로 전위 순회만 출력해도 된다.
이항 계수는 (A + B)^n 라는 다항식을 전개했을 때, A^r*B^(n-r) (0 <= r <= n인 정수)의 계수를 의미한다. A^r*B^(n-r)의 계수는 총 n개의 문자를 순서없이 배열하는 경우의 수와 같으며, 이는 조합과 같다.
셸 정렬은 삽입 정렬의 단점을 보완하기 위해서 삽입 정렬을 이용하여 배열 뒷부분의 작은 숫자들을 앞부분으로 빠르게 이동시키고, 동시에 앞부분의 큰 숫자들은 뒷부분으로 이동시키고, 그리고 가장 마지막에는 삽입 정렬을 수행하는 알고리즘이다.
네트워크 유량이란 유방향 그래프에 용량이 존재하는 것이다. 유량의 시작 정점을 Source, 끝 정점을 Sink라고 한다. 이 때, Source에서 Sink로 흘려보낼 수 있는 최대 유량(flow)을 구하는 문제를 네트워크 유량 문제라고 한다.