• ABOUT
  • PORTFOLIO
  • POSTS
  • GUESTBOOK

ยฉ 2025 BlueCool12 All rights reserved.

2025.06.25์ž๋ฃŒ๊ตฌ์กฐ

๐Ÿš‚ ๋ฐฐ์—ด(Array) ยท ๋™์  ๋ฐฐ์—ด(Dynamic Array) ยท ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Linked List) ๋น„๊ต ์ •๋ฆฌ

1. ๋ฐฐ์—ด (Array) 

๋ฐฐ์—ด์ด๋ž€ ๋™์ผํ•œ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์ €์žฅํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋‹ค. ๊ฐ ์š”์†Œ๋Š” ์ธ๋ฑ์Šค๋ฅผ ํ†ตํ•ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค.

๋ฐฐ์—ด์˜ ์š”์†Œ๋“ค์ด ๋™์ผํ•œ ํƒ€์ž…์ธ ์ด์œ ๋Š” ๊ฐ ์š”์†Œ์˜ ํฌ๊ธฐ๊ฐ€ ๊ฐ™์•„์•ผ ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ์ˆ˜ํ•™์ ์œผ๋กœ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ ์ผ์ •ํ•˜๋ฉด ์‹œ์ž‘ ์ฃผ์†Œ + (๋ฐ์ดํ„ฐ ํฌ๊ธฐ * ์ธ๋ฑ์Šค) ๋ผ๋Š” ์—ฐ์‚ฐ์„ ํ†ตํ•ด ํŠน์ • ์œ„์น˜์˜ ์š”์†Œ์— ์ฆ‰์‹œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ ๋ฐฐ์—ด์€ ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์ €์žฅ๋˜๋ฏ€๋กœ ์ธ์ ‘ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•จ๊ป˜ ์บ์‹œ์— ๋กœ๋“œ๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„ ์บ์‹œ ํžˆํŠธ์œจ์ด ๋†’๋‹ค.


แ„‡แ…ขแ„‹แ…งแ†ฏ.png 

์ด๋Ÿฌํ•œ ๊ตฌ์กฐ์  ํŠน์„ฑ ๋•Œ๋ฌธ์— ๋ฐฐ์—ด์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง„๋‹ค.


- ์ •์  ํ• ๋‹น

๋ฐฐ์—ด์€ ์ƒ์„ฑ ์‹œ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ด์•ผ ํ•˜๋ฉฐ ํ•œ ๋ฒˆ ์ •ํ•ด์ง„ ํฌ๊ธฐ๋Š” ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋Š” ๋ฐฐ์—ด์ด ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ•œ ๋ฒˆ์— ํ™•๋ณดํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

ํ”„๋กœ๊ทธ๋žจ์ด ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜๋ฉด ์šด์˜์ฒด์ œ(ํ˜น์€ ๋Ÿฐํƒ€์ž„ ์‹œ์Šคํ…œ)๋Š” ์š”์ฒญ๋œ ํฌ๊ธฐ๋งŒํผ์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ๋ฏธ๋ฆฌ ์˜ˆ์•ฝํ•œ๋‹ค. ํ™•๋ณด๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์€ ์—ฐ์†์„ฑ์„ ์œ ์ง€ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ์ค‘๊ฐ„์— ๋Š˜๋ฆฌ๋ ค๋ฉด ๋” ํฐ ์—ฐ์† ๊ณต๊ฐ„์„ ์ƒˆ๋กœ ํ™•๋ณดํ•˜๊ณ  ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•ด์•ผ ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ๋ณธ์ ์ธ ๋ฐฐ์—ด ๊ตฌ์กฐ์—์„œ๋Š” ํฌ๊ธฐ ๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.


- ์ธ๋ฑ์Šค๋ฅผ ํ†ตํ•œ ๋น ๋ฅธ ์ ‘๊ทผ

๋ฐฐ์—ด์€ ๋™์ผํ•œ ํฌ๊ธฐ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์—ฐ์†๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์ €์žฅ๋˜๋ฏ€๋กœ ์ธ๋ฑ์Šค๋ฅผ ํ†ตํ•ด ํŠน์ • ์š”์†Œ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ฆ‰์‹œ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ๊ณผ์ •์€ ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ์ผ์ •ํ•œ ์‹œ๊ฐ„์— ์ˆ˜ํ–‰๋˜๋ฏ€๋กœ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(1)์ด๋‹ค. ์ด๋ฅผ ์ž„์˜ ์ ‘๊ทผ(Random Access)์ด๋ผ๊ณ  ํ•œ๋‹ค.


- ์ค‘๊ฐ„ ์‚ฝ์ž…/์‚ญ์ œ์— ๋น„ํšจ์œจ

๋ฐฐ์—ด์€ ์—ฐ์†์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์ค‘๊ฐ„ ์œ„์น˜์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•˜๋ฉด ๊ทธ ๋’ค์— ์žˆ๋Š” ๋ชจ๋“  ์š”์†Œ๋ฅผ ํ•œ ์นธ์”ฉ ์ด๋™์‹œ์ผœ์•ผ ํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ธ๋ฑ์Šค i ์œ„์น˜์— ์ƒˆ๋กœ์šด ์š”์†Œ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ๊ฒฝ์šฐ i ์ดํ›„์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ์”ฉ ์ด๋™ํ•ด์•ผ ํ•˜๋ฉฐ ์‚ญ์ œ์˜ ๊ฒฝ์šฐ์—๋Š” ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ์”ฉ ๋‹น๊ฒจ์•ผ ํ•œ๋‹ค. ์ด ๊ณผ์ •์€ ์ตœ์•…์˜ ๊ฒฝ์šฐ ์ „์ฒด ์š”์†Œ๋ฅผ ์ด๋™์‹œ์ผœ์•ผ ํ•˜๋ฏ€๋กœ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(n)์ด๋‹ค.


แ„‡แ…ขแ„‹แ…งแ†ฏ แ„‰แ…ตแ„€แ…กแ†ซแ„‡แ…ฉแ†จแ„Œแ…กแ†ธแ„ƒแ…ฉ.png 


2. ๋™์  ๋ฐฐ์—ด (Dynamic Array)

๋™์  ๋ฐฐ์—ด์€ ๊ณ ์ • ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๋Š” ๋ฐฐ์—ด์˜ ์ œ์•ฝ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ๋‹ค. ์ฒ˜์Œ์—๋Š” ์ผ์ •ํ•œ ํฌ๊ธฐ์˜ ๋ฐฐ์—ด๋กœ ์‹œ์ž‘ํ•˜์ง€๋งŒ ์ €์žฅ ๊ณต๊ฐ„์ด ๋ถ€์กฑํ•ด์ง€๋ฉด ๋” ํฐ ๋ฐฐ์—ด์„ ์ƒˆ๋กœ ํ• ๋‹นํ•œ ๋’ค ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ํฌ๊ธฐ๋ฅผ ํ™•์žฅํ•œ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฐฉ์‹ ๋•๋ถ„์— ์ธ๋ฑ์Šค๋ฅผ ํ†ตํ•œ ์ ‘๊ทผ์€ O(1)์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ํฌ๊ธฐ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋‹ค.

๋Œ€ํ‘œ์ ์ธ ๋™์  ๋ฐฐ์—ด ๊ตฌํ˜„์œผ๋กœ๋Š” Java์˜ ArrayList์™€ Python์˜ list๊ฐ€ ์žˆ๋‹ค.


- ๊ฐ€๋ณ€์ ์ธ ํฌ๊ธฐ

๋™์  ๋ฐฐ์—ด์€ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋ฉฐ ํ˜„์žฌ ์ €์žฅ๋œ ์š”์†Œ์˜ ๊ฐœ์ˆ˜(size)์™€ ์‹ค์ œ ํ• ๋‹น๋œ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ(capacity)๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ๊ด€๋ฆฌํ•œ๋‹ค.

์ฒ˜์Œ์—๋Š” ์ผ์ •ํ•œ ํฌ๊ธฐ๋กœ ์‹œ์ž‘ํ•˜๋ฉฐ ์ €์žฅ ๊ณต๊ฐ„์ด ๋ถ€์กฑํ•ด์ง€๋ฉด ๋” ํฐ ๋ฐฐ์—ด์„ ์ƒˆ๋กœ ํ• ๋‹นํ•˜๊ณ  ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•œ๋‹ค. ์ด๋•Œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋Š” ๋ณดํ†ต ๊ธฐ์กด ํฌ๊ธฐ์˜ 1.5๋ฐฐ ๋˜๋Š” 2๋ฐฐ๋กœ ์ฆ๊ฐ€์‹œํ‚จ๋‹ค.

์ด์ฒ˜๋Ÿผ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ํ™•์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์žฌํ• ๋‹น์€ ๊ฐ€๋” ๋ฐœ์ƒํ•˜์ง€๋งŒ ์ „์ฒด์ ์œผ๋กœ ๋ณด๋ฉด ๋งจ ๋’ค ์‚ฝ์ž… ์—ฐ์‚ฐ์€ ๋ถ„ํ•  ์ƒํ™˜ ์‹œ๊ฐ„ ๋ณต์žก๋„ O(1)์„ ๊ฐ€์ง„๋‹ค.


แ„ƒแ…ฉแ†ผแ„Œแ…ฅแ†จ แ„‡แ…ขแ„‹แ…งแ†ฏ แ„‰แ…ตแ„€แ…กแ†ซ แ„‡แ…ฉแ†จแ„Œแ…กแ†ธแ„ƒแ…ฉ.png 

3. ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ (Linked List)

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ๋•Œ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์—ฐ์†๋œ ๊ณต๊ฐ„์— ์ €์žฅํ•˜์ง€ ์•Š๊ณ  ๊ฐ ์š”์†Œ(๋…ธ๋“œ)๊ฐ€ ๋‹ค์Œ ์š”์†Œ๋ฅผ ํฌ์ธํ„ฐ๋ฅผ ํ†ตํ•ด ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐฉ์‹์œผ๋กœ ์—ฐ๊ฒฐ๋œ ์„ ํ˜• ์ž๋ฃŒ๊ตฌ์กฐ๋‹ค.

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

๊ฐ ๋…ธ๋“œ๋Š” ๊ฐ’๊ณผ ๋‹ค์Œ ๋…ธ๋“œ์˜ ์ฃผ์†Œ๋ฅผ ํฌํ•จํ•˜๋ฉฐ ๊ตฌ์กฐ์— ๋”ฐ๋ผ ๋‹จ์ผ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Singly Linked List), ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Doubly Linked List), ์›ํ˜• ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Circular Linked List)๋กœ ๋‚˜๋‰œ๋‹ค.


- ์ค‘๊ฐ„ ์‚ฝ์ž…/์‚ญ์ œ์— ํšจ์œจ์ 

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๋Š” ํŠน์ • ์œ„์น˜์˜ ๋…ธ๋“œ๋ฅผ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ํฌ์ธํ„ฐ๋งŒ ๋ณ€๊ฒฝํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ์ค‘๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

์‚ฝ์ž…ํ•  ์œ„์น˜์˜ ์ด์ „ ๋…ธ๋“œ๊ฐ€ ์ƒˆ๋กœ์šด ๋…ธ๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋„๋ก ํ•˜๊ณ  ์ƒˆ๋กœ์šด ๋…ธ๋“œ๊ฐ€ ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋„๋ก ์—ฐ๊ฒฐ๋งŒ ์ˆ˜์ •ํ•˜๋Š” ์‹์ด๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์€ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์š”์†Œ๋ฅผ ์ด๋™์‹œํ‚ฌ ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์‚ฝ์ž…๊ณผ ์‚ญ์ œ ์—ฐ์‚ฐ์ด O(1)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค.


- ์ž„์˜ ์ ‘๊ทผ ๋ถˆ๊ฐ€๋Šฅ

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๋Š” ๋ฐฐ์—ด๊ณผ ๋‹ฌ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์—์„œ ์—ฐ์†๋œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•œ ์ง์ ‘ ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

ํŠน์ • ์œ„์น˜์˜ ์š”์†Œ์— ์ ‘๊ทผํ•˜๋ ค๋ฉด ์‹œ์ž‘ ๋…ธ๋“œ๋ถ€ํ„ฐ ์ˆœ์ฐจ์ ์œผ๋กœ ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ๋”ฐ๋ผ ์ด๋™ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ ‘๊ทผ ์‹œ๊ฐ„์€ ์ตœ์•…์˜ ๊ฒฝ์šฐ O(n)์ด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ์—์„œ๋Š” ์ž„์˜ ์ ‘๊ทผ์ด ์ง€์›๋˜์ง€ ์•Š๋Š”๋‹ค.


- ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„ํ—ค๋“œ

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๋Š” ๋ฐ์ดํ„ฐ ์™ธ์—๋„ ๋…ธ๋“œ ๊ฐ„ ์—ฐ๊ฒฐ์„ ์œ„ํ•ด ํฌ์ธํ„ฐ๋ฅผ ์ €์žฅํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ถ”๊ฐ€์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ํ•„์š”ํ•˜๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹จ์ผ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ์˜ ๊ฒฝ์šฐ ๊ฐ’ ๋ฐ์ดํ„ฐ์™€ ํ•จ๊ป˜ ๋‹ค์Œ ๋…ธ๋“œ์˜ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•ด์•ผ ํ•œ๋‹ค. ์ด์ฒ˜๋Ÿผ ๋ฐฐ์—ด์— ๋น„ํ•ด ๋ถ€๊ฐ€์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ(๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„ํ—ค๋“œ)์ด ๋ฐœ์ƒํ•œ๋‹ค.


แ„‹แ…งแ†ซแ„€แ…งแ†ฏ แ„…แ…ตแ„‰แ…ณแ„แ…ณ แ„‰แ…ตแ„€แ…กแ†ซ แ„‡แ…ฉแ†จแ„Œแ…กแ†ธแ„ƒแ…ฉ.png 

์ด์ „ ๊ธ€
(ฮ‡ . ฮ‡ ) ์ด์ „ ๊ธ€์ด ์—†์Šต๋‹ˆ๋‹ค
๋‹ค์Œ ๊ธ€
๐Ÿ‘พ ๋ฆฌ๋ˆ…์Šค ๊ธฐ๋ณธ ๋ช…๋ น์–ด ์ •๋ฆฌ
์žฅ์‹์šฉ ๋กœ๊ณ