최대 1 분 소요

아르고리즘

  • 심심해서 알아본 알고리즘의 역사 간략하게

    알고리즘이라는 단어 자체는 9세기경 페르시아 수학자 알콰리즈미(Al-Khwarizmi)의 이름으로 유래가 되었으며 수학의 다양한 방정식들의 해법에 대한 책을 서기 830년에 집필했다.
    참고로 이 양반은 수학을 제외하고도 천문학, 지리학, 지도 등등 다양한 분야에서 다재다능한 양반

번외로 최대공약수를 찾는 알고리즘의 하나인 유클리드 알고리즘은 가장 오래된 알고리즘으로 기원전 300년경에 생겼다고 한다.

알고리즘 공부의 핵심

  • 시간복잡도 (Big O Time) 변화
  • 효율적인 자료구조 선택

알고리즘의 종류

탐색(Search)

  1. 선형 탐색(Linear Search)
  2. 이분(이진) 탐색(Binary Search)
  3. 순차 탐색(Sequential Search)
  4. 해시 탐색(Hash Search)
    1. 해시 테이블(Using Hash Tables)

정렬(Sorting)

  1. 버블 정렬(Bubble Sort)
  2. 선택 정렬(Selection Sort)
  3. 삽입 정렬(Insertion Sort)
  4. 퀵 정렬(Quick Sort)
  5. 병합 정렬(Merge Sort)
  6. 힙 정렬(Heap Sort)
  7. 기수 정렬(Radix Sort)
  8. 계수 정렬(Count Sort)

완전 탐색

  1. 브루트 포스(Brute Force)
  2. 비트 마스크(Bit Mask)
  3. 백트래킹
  4. 재귀함수
  5. 순열
  6. BFS(너비 우선 탐색)
  7. DFS(깊이 우선 탐색)