Skip to content
baksakcci edited this page Sep 2, 2023 · 7 revisions

순서

이해 -> 반례 -> 도식화(초기화 해야할 것 정리 및 로직 선정) -> 테스트 및 디테일

중간중간마다 테스트를 위한 출력문 작성은 필수. 한 싸이클마다 작성하여 상태를 확인하는 것이 중요.

day 몇일 차: 3
idx: 0
현재 pQ 상태
queue 추가: 60 3
queue 추가: 30 3
추가된 이후 pQ 상태
60
30
max: 60
--------
day 몇일 차: 2
idx: 2
현재 pQ 상태
30
queue 추가: 50 2
queue 추가: 40 2
추가된 이후 pQ 상태
50
30
40
max: 110
--------

search

탐색 알고리즘.

원하는 데이터를 찾을 때 까지 돌리는 알고리즘. 알고리즘의 원초적인 목적이자 모든 알고리즘의 근간이 됨.

  • array(two pointer, sliding window)
  • hashMap(key-value)
  • binary search(tree)
  • graph 순회(DFS, BFS)
  • [stack, queue]

sort

정렬 알고리즘

데이터 순서 정재 알고리즘. 주로 search하는데 있어 시간복잡도를 줄여주는 역할을 담당

  • selection, bubble, insertion
  • quick(divide & conquer)
  • coordinate(2D array)
  • 위상 정렬

optimization

최적화 알고리즘

탐색 알고리즘의 연장선으로, 정해진 답은 없지만(모든 것이 답이 될 수 있지만) 최소 값이나 최대 값과 같은 최적의 답을 도출하는 알고리즘

ex) 최단 경로 문제, 배낭 채우기 문제 ...

  • dicision
  • dynamic programming
  • graph backtracking
  • greedy(graph)

심화

  • graph shortest path

implementation

구현 문제

여러 알고리즘을 섞어서 차례로 풀어야 되는 문제.

Clone this wiki locally