Algorithm classification (알고리즘 분류)

Posted by ceyx
2017. 7. 12. 13:20 Algorithm/Algorithm 상세분류

알파벳 순으로 작성했습니다. 제 마음대로~ 공부하고 있는대로~ 작성한 것이기 때문에 정중한 태클은 환영입니다

기본부터 시작해서 점점 늘려갈 것 입니다ㅎㅎ

 

 

1. Bit manipulation

(1) Binary representation of a given number
(2) Count number of bits to be flipped to convert A to B
(3) Count total set bits in all numbers from 1 to n
(4) Find Next Sparse Number
(5) Find the element that appears once
(6) Magic Number 

(7) Maximum Subarray XOR
(8) Rotate bits of a number

(9) Sum of bit differences among all pairs
(10) Swap All Odds And Even Bits

 

2. Data structure (자료구조)

(1) Linear structure (선형구조)

- Array (배열)

- Deque (덱)

- Linked List (연결리스트)

- Stack (스택)

- Queue (큐)

(2) Nonlinear structure (비선형구조)

- Graph (그래프)

- Tree (트리)

(3) Simple structure (단순구조)

- Character, Float, Integer, String (문자, 실수, 정수, 문자열)

 

3. Dynamic Programming (다이나믹 프로그래밍)

(1) 0-1 Knapsack

(2) Longest Common Subsequence

(3) Longest Increasing Subsequence

 

4. Graph (그래프)

(1) Boggle

(2) Breadth First Search(BFS, 너비우선탐색)

(3) Depth First Search (DFS, 깊이우선탐색)

(4) Shortest Path (최단거리)

- Dijkstra (다익스트라)

- Bellman-Ford (벨만-포드)

- Floyd-Warshall (플로이드-와샬)

- Shortest Path Faster Algorithm (SPFA)

(5) Minimum Spanning tree (최소신장트리)

- Kruskal (크루스칼)

- Prim (프림)

(6) Topological Sort (위상정렬)

 

5. Geometry & Number theory (기하와 정수론)

(1) Convex Hull

 

8. Searching & Sorting (탐색과 정렬)

(1) Binary Search

(2) Bubble Sort

(3) Heap Sort 

(4) Insertion Sort

(5) Merge Sort

(6) Quick Sort

 

9. String (문자열)

(1) Palindrome (회문)

 

10. Tree (트리)

(1) Binary Search Tree

(2) Fecwick Tree

(3) Lowest Common Ancestor

(4) Perfect Binary Tree

(5) Segment Tree

 

 

 

 

Reference (출처) 

1. https://simple.wikipedia.org/wiki

2. http://www.geeksforgeeks.org/top-10-algorithms-in-interview-questions/