๐Ÿ’ฌ SOFTWARE 003

Dong_Juneยท2022๋…„ 2์›” 4์ผ
0

CS

๋ชฉ๋ก ๋ณด๊ธฐ
13/16
post-thumbnail

021 ์„ ํƒ ์ •๋ ฌ & ํ€ต ์ •๋ ฌ


์„ ํƒ ์ •๋ ฌ [O(N2)O(N^2)]

  • ์ฃผ์–ด์ง„ ํ•ญ๋ชฉ๋“ค์ด ์ •๋ ฌ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ์ด์ง„ ๊ฒ€์ƒ‰์„ ํ•  ์ˆ˜ ์—†์Œ

  • ์ •๋ ฌ(sorting)์€ ํ•ญ๋ชฉ์„ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์—ดํ•ด์„œ ๊ฒ€์ƒ‰์ด ๋นจ๋ฆฌ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์คŒ

  • ์„ ํƒ ์ •๋ ฌ(Selection Sort)์€ ์•„์ง ์ •๋ ฌ๋˜์ง€ ์•Š์€ ํ•ญ๋ชฉ ์ค‘์—์„œ ๋‹ค์Œ ํ•ญ๋ชฉ์„ ๊ณ„์† ์„ ํƒํ•จ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์—ฐ๊ตฌํ•˜๋Š” ์ปดํ“จํ„ฐ๊ณผํ•™์ž๋“ค์€ ๋น„๊ด€๋ก ์ž๋ผ์„œ ์ง€๋ฆ„๊ธธ ์—†์ด ๋ชจ๋“  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ์ตœ์•…์˜ ๊ฒฝ์šฐ๋ฅผ ๊ฐ€์ •ํ•จ

  • [ํ•ญ๋ชฉ์„ ํ›‘์–ด๋ณด๋Š” ํšŸ์ˆ˜] = [N + N-1 + N-2 + ... + 1] = [N * (N+1) / 2]

  • ์ผ์˜ ์–‘์€ N2N^2, ๊ณ„์ˆ˜๋ฅผ ์ œ์™ธํ•ด์„œ ์ตœ๊ณ ์ฐจํ•ญ์ธ 2์ฐจ(quadratic)์ธ ์ฆ๊ฐ€์œจ์„ ๋ณด์ž„


ํ€ต ์ •๋ ฌ [O(NlogN)O(NlogN)]

  • ํ€ต ์ •๋ ฌ(Quick Sort)์€ ๋ถ„ํ•  ์ •๋ณต์˜ ํ›Œ๋ฅญํ•œ ์‚ฌ๋ก€

  • ํ•ญ์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜์ง€๋งŒ ๊ทธ๋ฃน์„ ๋‚˜๋ˆŒ ๋•Œ๋งˆ๋‹ค ๊ฑฐ์˜ ๊ฐ™์€ ํฌ๊ธฐ์˜ ๋ฉ์–ด๋ฆฌ๋กœ ๋‚˜๋ˆ ์•ผ๋งŒ ํšจ์œจ์  [1/21/2]

  • NlogNNlogN์˜ ์—ฐ์‚ฐ์ด ํ•„์š”

  • ์„ ํ˜•๋ณด๋‹ค๋Š” ํšจ์œจ์ด ๋‚ฎ์ง€๋งŒ ์‹ฌํ•˜์ง€๋Š” ์•Š๊ณ , N์ด ์กฐ๊ธˆ์ด๋ผ๋„ ํฌ๋ฉด 2์ฐจ(N2N^2)๋ณด๋‹ค ํ›จ์”ฌ ํšจ์œจ์ 

  • ์„ ํƒ ์ •๋ ฌ๊ณผ ํ€ต ์ •๋ ฌ ์‹œ๊ฐ„ ๋น„๊ต

๊ฐœ์ˆ˜(N)์„ ํƒ ์ •๋ ฌ ์‹œ๊ฐ„(์ดˆ)ํ€ต ์ •๋ ฌ ์‹œ๊ฐ„(์ดˆ)
10000.047-
1,00004.150.025
10,00007710.23
100,0000-3.07
1000,0000-39.9
  • ์„ ํƒ์ •๋ ฌ์—์„œ 10,0000๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด 1,0000๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์‹œ๊ฐ„์— ๋น„ํ•ด 100๋ฐฐ ํด ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ–ˆ์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ๊ฑฐ์˜ 200๋ฐฐ์ž„

    • ์บ์‹ฑ์˜ ์˜ํ–ฅ ์ผ์ˆ˜๋„

    • ๋ฐ์ดํ„ฐ๊ฐ€ ์บ์‹œ์— ๋ชจ๋‘ ๋“ค์–ด๊ฐ€์ง€ ๋ชปํ•˜๋ฉด์„œ ์ •๋ ฌ์ด ๋Š๋ ค์ง„ ๊ฒƒ

    • ๊ณ„์‚ฐ ๊ณผ์ •์„ ์ด๋ก ์ ์œผ๋กœ ์ถ”์ƒํ™”ํ•œ ๊ฒƒ๊ณผ ํ”„๋กœ๊ทธ๋žจ์ž„ ์‹ค์ œ๋กœ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒํ™ฉ ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ๋ณด์—ฌ์คŒ


๐Ÿ“Œ์‹œ๊ฐ„ ๋ณต์žก๋„ ๊ทธ๋ž˜ํ”„ ์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ

profile
๐Ÿ‘€ ๊ฐœ๋ฆฐ์ด

0๊ฐœ์˜ ๋Œ“๊ธ€