<자료구조와 알고리즘간의 관계> 자료구조의 본질은 자료를 담는 공간이다. 어떻게 담느냐에 따라, 자료의 활용 효율이 달라진다.

알고리즘의 본질은 문제를 해결하는 방법이다. 문제의 해법에는 여러가지가 있을 수 있고, 각각의 방법들은 효율면에서 다를 수 있다.

알고리즘

알고리즘이란 무엇인가? 어떤 문제를 해결하기 위한 절차들의 집합을 알고리즘이라 한다. 문제를 해결할 수 있는 방법이 여러가지인 경우, 성능을 고려하여 적절히 선택한다.

분류

알고리즘을 분류하는 방법은 여러가지이고, 각각 장점이 있다.

By Implementation

One way to classify alogrithms is by implementation means.

  • Recursion
  • Serial, parallel or distributed
  • Deterministic or non-deterministic
  • Exact or approximate
  • Quantum algorithm

By Design Paradigm

Another way to classify alogrithms is by design paradigm.

Optimization Problems

  • Linear Programming
  • Dynamic Programming
  • Greedy Method
  • Heuristic Method

Search

  • 순차탐색
  • 이진탐색

Sort

  • 버블소트
  • 삽입소트
  • 선택소트
  • 힙소트
  • 라딕스소트

Paradaigm.

그리디 분할정복 동적계획

암호 알고리즘 백트래킹

분야별 정리 Encryption Algorithm. Topology Algorithm. Basic Combinatorics Machine Learning Algorithm. Probabilistic Algorithm.