버블 정렬이라는 이름은 한 사이클마다 가장 큰 원소가 거품 올라오듯 정렬이 진행된다 하여 붙은 것이다.
선택 정렬이라는 이름은 남은 원소들 중 가장 작은 값을 매번 선택한다 하여 붙은 것이다.
삽입 정렬의 핵심 원리는 i번째 값을 삽입하려고 할 때 0번째부터 i - 1번째까지는 정렬된 상태라는 점이다.
병합 정렬은 분할 정복(Divide and Conquer) 알고리즘 중 하나로, 어떠한 경우에도 O(N log N)이 소요된다.
퀵 정렬은 다른 O(N log N) 정렬 알고리즘에 비해 대부분의 경우 훨씬 빠르게 동작하는데, 그 성능은 파티션 계획법에 달려 있다.
그래프 이론에서 최단 경로 문제는 경유하는 간선들의 가중치 합이 최소가 되도록 하는 두 정점 사이의 경로를 찾아내는 문제를 의미한다.
다익스트라 알고리즘은 그래프에서 정점 간의 최단 경로를 찾는 알고리즘이다.
이진 검색(Binary Search)이란, 정렬된 데이터에서 검색 범위를 절반씩 줄여나가면서 원하는 값을 검색하는 알고리즘이다.
투 포인터는 대개 시작점과 끝점, 또는 왼쪽 포인터와 오른쪽 포인터 두 지점을 기준으로 하는 전략이다. 슬라이딩 윈도우는 고정 사이즈의 윈도우가 이동하면서 윈도우 내에 있는 데이터들을 확인하는 전략이다.
그리디(Greedy) 알고리즘은 글로벌 최적을 찾기 위해 각 단계에서 로컬 최적의 선택을 하는 휴리스틱 문제 해결 알고리즘이다.
동적 계획법이란 문제를 작은 문제로 분할하여 해결한 결과를 저장해 나중에 큰 문제의 결과에 합하여 풀이하는 알고리즘으로, 최적 부분 구조를 띤 문제를 풀이할 수 있는 방법이다.
Amortized Analysis(분할 상환 분석)은 Big-O(빅오)와 함께 함수의 동작을 설명할 때 중요한 분석 방법 중 하나이다.
순열이란 n개의 성분 중 r개를 선택해 '순서대로' 나열하는 것을 의미한다. 조합이란 n개의 성분 중 r개를 선택해 '순서 상관 없이' 나열하는 것을 의미한다.
'Sieve of Eratosthenes(에라토스테네스의 체)'는 Primality Test(소수 판별법)에 쓰이는 알고리즘 중 하나이다.
P-NP 문제는 P = NP인지 증명해야 하는 문제이다. P 집합은 NP 집합의 부분집합이므로, 모든 NP 문제가 P 문제인지 아닌지를 증명하면 된다. 이는 컴퓨터과학 분야의 대표적인 미해결 문제이면서 밀레니엄 문제 중 하나이다.