본문 바로가기

개발/알고리즘

알고리즘 공부를 하며

반응형

알고리즘은 효율적인 코딩이다.

알고리즘의 큰 틀 안에는 크게 자료구조시간복잡도가 있다.
시간복잡도를 간단하게 설명하자면, For문과 While 같은 반복문의 사용 빈도를 보고 연산 시간을 추측하는 방법이다.

자료구조는 데이터를 저장, 조작하는 방법을 나열한 것이고 아래와 같다.
알고리즘의 큰 뿌리인 자료구조이니 더 자세히 보고가자.

자료구조

 

알고리즘을 공부하기 위한 단계

그렇다면 많고 많은 알고리즘 중에 어느 것부터 시작해야할까? 
알고리즘의 기본은 자료구조를 이해하고 있느냐부터 시작한다.
위 그림을 보고 헷갈리거나 잘 모르는 것이 있다면 우선 자료구조의 개념을 살펴보도록 하자.

자료구조에 준비가 되었다면 아래의 순으로 공부를 시작한다.

기본적인 알고리즘

  • 스택, 큐
  • 재귀
  • 정렬

중급 알고리즘 

  • 그리디
  • 구현
  • DFS/BFS
  • 다이나믹 프로그래밍

고급 알고리즘

더 어려운 알고리즘에 도전하고 싶다면 아래를 시작해보길!

  • 다이나믹 프로그래밍
  • 그래프
  • 분할 정복
  • KMP
  • 유클리드 호제법

 

 

반응형