dev_sia 2022. 10. 29. 00:05

1. ์ž๋ฃŒ ๊ตฌ์กฐ

  • ๋ฐ์ดํ„ฐ: ๋ชจ๋“  ์œ ํ˜•์˜ ์ •๋ณด๋ฅผ ๋ง๋ผํ•˜๋Š” ์šฉ์–ด
  • ์ž๋ฃŒ๊ตฌ์กฐ: ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์งํ•˜๋Š” ๋ฐฉ๋ฒ•

2. ๋ฐฐ์—ด: ๊ธฐ์ดˆ ์ž๋ฃŒ ๊ตฌ์กฐ

  • ๋ฐฐ์—ด: ๋ฐ์ดํ„ฐ ์›์†Œ๋“ค์˜ ๋ฆฌ์ŠคํŠธ

2.1 ์ž๋ฃŒ๊ตฌ์กฐ ์—ฐ์‚ฐ

  • ์ฝ๊ธฐ: ํŠน์ • ์œ„์น˜๋ฅผ ์ฐพ์•„๋ณด๋Š” ๊ฒƒ
  • ๊ฒ€์ƒ‰: ์ž๋ฃŒ๊ตฌ์กฐ ๋‚ด์—์„œ ํŠน์ • ๊ฐ’์„ ์ฐพ๋Š” ๊ฒƒ
  • ์‚ฝ์ž…: ์ž๋ฃŒ๊ตฌ์กฐ์— ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ
  • ์‚ญ์ œ: ์ž๋ฃŒ๊ตฌ์กฐ์—์„œ ๊ฐ’์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ

3. ์†๋„ ์ธก์ •

  • ์—ฐ์‚ฐ์ด ์–ผ๋งˆ๋‚˜ ๋น ๋ฅธ๊ฐ€๋ฅผ ์ธก์ •ํ•  ๋•Œ๋Š” ์‹œ๊ฐ„ ๊ด€์ ์—์„œ ์ธก์ •ํ•˜์ง€ ์•Š๊ณ  ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•œ์ง€๋ฅผ ๋…ผํ•ด์•ผ ํ•œ๋‹ค.
  • ์—ฐ์‚ฐ์˜ ์†๋„ ์ธก์ • → ์‹œ๊ฐ„ ๋ณต์žก๋„ ์ธก์ •
    • == ์†๋„, ์‹œ๊ฐ„ ๋ณต์žก๋„, ํšจ์œจ์„ฑ, ์„ฑ๋Šฅ

4. ์ฝ๊ธฐ

  • ์ฝ๊ธฐ: ๋ฐฐ์—ด ๋‚ด ํŠน์ • ์ธ๋ฑ์Šค์— ์–ด๋–ค ๊ฐ’์ด ๋“ค์–ด ์žˆ๋Š”์ง€ ์ฐพ์•„๋ณด๋Š” ๊ฒƒ
  • ์ปดํ“จํ„ฐ์˜ ํŠน์ง•
    1. ์ปดํ“จํ„ฐ๋Š” ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ํ•œ ๋ฒˆ์— ๊ฐˆ ์ˆ˜ ์žˆ๋‹ค.
    2. ์ปดํ“จํ„ฐ๋Š” ๋ฐฐ์—ด์„ ํ• ๋‹นํ•  ๋•Œ ์–ด๋–ค ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์—์„œ ์‹œ์ž‘ํ•˜๋Š”์ง€๋„ ๊ธฐ๋กํ•ด ๋‘”๋‹ค.
  • ๋ฐฐ์—ด ์ฝ๊ธฐ๋Š” ๋งค์šฐ ํšจ์œจ์ ์ธ ์—ฐ์‚ฐ์ด๋‹ค.
  • O(1)

5. ๊ฒ€์ƒ‰

  • ๊ฒ€์ƒ‰: ๋ฐฐ์—ด์— ํŠน์ • ๊ฐ’์ด ์žˆ๋Š”์ง€ ์•Œ์•„๋ณธ ํ›„, ์žˆ๋‹ค๋ฉด ์–ด๋–ค ์ธ๋ฑ์Šค์— ์žˆ๋Š”์ง€ ์ฐพ๋Š” ๊ฒƒ
  • ์ปดํ“จํ„ฐ๊ฐ€ ํŠน์ • ๊ฐ’์œผ๋กœ ๋ฐ”๋กœ ๊ฐˆ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค.
  • ์ปดํ“จํ„ฐ์˜ ํŠน์ง•: ์ปดํ“จํ„ฐ๋Š” ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ํ•œ ๋ฒˆ์— ์ ‘๊ทผํ•˜์ง€๋งŒ ๊ฐ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ์–ด๋–ค ๊ฐ’์ด ์žˆ๋Š”์ง€ ๋ฐ”๋กœ ์•Œ ์ˆ˜ ์—†๋‹ค.
  • O(N)

6. ์‚ฝ์ž…

  • ๋ฐฐ์—ด์— ์ƒˆ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ์—ฐ์‚ฐ์€ ๋ฐฐ์—ด์˜ ์–ด๋””์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š”๊ฐ€์— ๋”ฐ๋ผ ํšจ์œจ์„ฑ์ด ๋‹ค๋ฅด๋‹ค.
  • ์ปดํ“จํ„ฐ์˜ ํŠน์ง•: ๋ฐฐ์—ด์„ ํ• ๋‹นํ•  ๋•Œ ํ•ญ์ƒ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๊ธฐ๋กํ•œ๋‹ค
  • ๋ฐฐ์—ด์˜ ๋์— ์ƒˆ ์›์†Œ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๊ฒฝ์šฐ: ์ปดํ“จํ„ฐ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€๋˜๋Š” ์›์†Œ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ฐ”๋กœ ์•Œ ์ˆ˜ ์žˆ๋‹ค.
  • ๋ฐฐ์—ด์˜ ์ฒ˜์Œ์ด๋‚˜ ์ค‘๊ฐ„์— ์›์†Œ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๊ฒฝ์šฐ: ์‚ฝ์ž…ํ•  ๊ณต๊ฐ„์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๋งŽ์€ ๋ฐ์ดํ„ฐ ์กฐ๊ฐ์„ ์ด๋™์‹œ์ผœ์•ผ ํ•œ๋‹ค.
  • O(N)

7. ์‚ญ์ œ

  • ํŠน์ • ์ธ๋ฑ์Šค์˜ ๊ฐ’์„ ์ œ๊ฑฐํ•œ๋‹ค.
  • ๋ฐฐ์—ด์— ๋น„์–ด ์žˆ๋Š” ๊ณต๊ฐ„์ด ์ƒ๊ธฐ๋ฉด ํšจ์œจ์ ์ด์ง€ ์•Š์œผ๋ฏ€๋กœ, ๋ฐ์ดํ„ฐ๋ฅผ ์˜ฎ๊ฒจ ๋นˆ ๊ณต๊ฐ„์„ ๋ฉ”์›Œ์•ผ ํ•œ๋‹ค.
  • O(N)

8. (๋ฐฐ์—ด๊ธฐ๋ฐ˜)์ง‘ํ•ฉ: ๋‹จ ํ•˜๋‚˜์˜ ๊ทœ์น™์œผ๋กœ ํšจ์œจ์„ฑ์ด ๋‹ฌ๋ผ์ง„๋‹ค

  • ์ง‘ํ•ฉ: ์ค‘๋ณต ๊ฐ’์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ์ž๋ฃŒ๊ตฌ์กฐ
  • ๋ฐฐ์—ด ๊ธฐ๋ฐ˜ ์ง‘ํ•ฉ: ๊ฐ’๋“ค์˜ ๋‹จ์ˆœ ๋ฆฌ์ŠคํŠธ, ๋ฐฐ์—ด๊ณผ ๊ฑฐ์˜ ๋น„์Šทํ•˜๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ง‘ํ•ฉ์€ ์ค‘๋ณต ๊ฐ’์˜ ์‚ฝ์ž…์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์ฝ๊ธฐ, ๊ฒ€์ƒ‰์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ๋ฐฐ์—ด๊ณผ ๊ฐ™๋‹ค.
  • ์‚ฝ์ž…
    • ๋ฐฐ์—ด์—์„œ๋Š” ๋‹ค๋ฅธ ๊ฐ’์„ ํ™•์ธํ•˜์ง€ ์•Š๊ณ  ์ ์ ˆํ•œ ์ž๋ฆฌ์— ๋„ฃ์œผ๋ฉด ๋์ด๋‹ค.
    • ์ง‘ํ•ฉ์—์„œ๋Š” ์ƒˆ๋กœ์šด ๊ฐ’์ด ์ด๋ฏธ ์ง‘ํ•ฉ์— ๋“ค์–ด ์žˆ๋Š”์ง€ ์•Œ์•„๋‚ด์•ผ ํ•œ๋‹ค.
    • ์ค‘๋ณต ๋ฐ์ดํ„ฐ๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
    • ๋”ฐ๋ผ์„œ ์‚ฝ์ž…์—๋Š” ๊ฒ€์ƒ‰์ด ์šฐ์„ ์ด๋‹ค.
    • ์ตœ์„ ์˜ ์‹œ๋‚˜๋ฆฌ์˜ค: ์ง‘ํ•ฉ์˜ ๋์— ์‚ฝ์ž…ํ•  ๋•Œ → O(N+1)
    • ์ตœ์•…์˜ ์‹œ๋‚˜๋ฆฌ์˜ค: ์ง‘ํ•ฉ์˜ ๋งจ ์•ž์— ์‚ฝ์ž…ํ•  ๋•Œ → O(2N+1)