Algorithm

Sat 10 A.M.

2019.03.16

차례

  • 알고리즘이란?
  • 프로그래밍에서 알고리즘이란?
  • 버블정렬? 퀵정렬?
  • 시간복잡도, 공간복잡도
  • 최단경로 탐색
  • 다이나믹 프로그래밍

알고리즘이란?

프로그래밍에서

알고리즘이란?

이진탐색트리?

민힙? 맥스힙?

버블정렬? 퀵정렬?

B트리? B+트리?

알고리즘이란 

주어진 입력에 대해

명확한 목적을 갖고 효과적으로

결과물을 도출하기 위한 논리적인 규칙

왜?

1 에서 8 까지 가는 최단경로는?

버블정렬? 퀵정렬?

정렬(Sorting)

15가지 정렬 알고리즘 한눈에 보기https://www.youtube.com/watch?v=kPRA0W1kECg&feature=youtu.be

버블정렬

퀵정렬

버블정렬 너 얼마나 걸려?

버블정렬 너 얼마나 걸려?

10 9 8 7 6 5 4 3 2 1

9 8 7 6 5 4 3 2 1 10

8 7 6 5 4 3 2 1 9 10

1 2 3 4 5 6 7 8 9 10

...

n(n+1) / 2

버블정렬 너 얼마나 걸려?

그럼 퀵정렬은?

그럼 퀵정렬은?

그럼 퀵정렬은?

그럼 퀵정렬은?

그럼 퀵정렬은?

시간복잡도?

공간복잡도?

시간복잡도 / 공간복잡도

시간복잡도 / 공간복잡도

최단경로 탐색

그리디(Greedy) 알고리즘

탐욕 알고리즘

눈앞의 이익을 쫓는다!

그리디(Greedy) 알고리즘

탐욕 알고리즘

눈앞의 이익을 쫓는다!

그리디(Greedy) 알고리즘

탐욕 알고리즘

눈앞의 이익을 쫓는다!

완전 탐색(brute-force)

 

완전 탐색(brute-force)

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

완전 탐색(brute-force)

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

완전 탐색(brute-force)

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

다익스트라(djikstra)
알고리즘

99, 1, 2, 0, 7, 0, 0, 0

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 7, 0, 5, 0

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 7, 10, 5, 0

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 7, 7, 5, 0

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 7, 7, 4, 0

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 6, 7, 4, 10

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 6, 7, 4, 9

다익스트라(djikstra)
알고리즘

99, 1, 2, 3, 6, 7, 4, 9

다이나믹 프로그래밍

다이나믹 프로그래밍

Q & A