ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฐ˜์‘ํ˜•

๋ฐฐ์—ด์ด ์žˆ๊ณ  ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ ์Šคํƒ ํ ์Šค๋ฆฌ ํ•ด์‹ฑ ๋“ฑ์ด ์ž๋ฃŒ๊ตฌ์กฐ์˜ ๊ธฐ๋ณธ

 

Array - ๋ฐฐ์—ด

์„ ํ˜• ์ž๋ฃŒ๊ตฌ์กฐ์˜ ๋Œ€ํ‘œ์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ ์ค‘ ํ•˜๋‚˜. ์ผ์—ด๋กœ ๋˜์–ด์žˆ์Œ

๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ์™€ ๋ฌผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ, ์œ„์น˜๊ฐ€ ๋™์ผํ•˜๋‹ค!

์ƒ์„ฑ์„ ํ•  ๋•Œ ๋ช‡๊ฐœ์งœ๋ฆฌ๋ผ๊ณ  ํ™•์‹คํžˆํ•˜๊ณ  ๋“ค์–ด๊ฐ„๋‹ค.

๊ณ ์ •๋œ ๊ธธ์ด๋ฅผ ๊ฐ€์ง€๊ณ  ๋“ค์–ด๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ์ธ๋ฑ์Šค์—ฐ์‚ฐ์„ ๊ต‰์žฅํžˆ ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹จ์ ์€ ๋ฐฐ์—ด์€ ์ค‘๊ฐ„์— ๋นŒ ์ˆ˜๊ฐ€ ์—†๋‹ค. ๋ฐฐ์—ด์€ ๋ฐฐ์—ด์˜ ๊ธธ์ด์— ์ข…์†๋˜์–ด์žˆ๋‹ค. ์—ฐ์‚ฐ์ด ๊ธธ์ด์— ๋”ฐ๋ผ ์†๋„?๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ข…์†์ด ๋˜์–ด์žˆ๋‹ค๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์‚ฝ์ž… ์‚ญ์ œ๋ฅผ ํ•  ๊ฒฝ์šฐ ๊ธธ์ด์— ๋”ฐ๋ผ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค. O(n)

์š”์†Œ๊ฐ€ ์ž๊พธ ๋ณ€ํ™”ํ•œ๋‹ค ํ• ๋•Œ ๋ฐฐ์—ด์„ ์“ฐ๋Š”๊ฒƒ์€ ์ข‹์ง€ ์•Š๋‹ค. ๋งŒ์•ฝ ๋” ๋Š˜๋ฆฌ๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค๋ฅธ ๋ฐฐ์—ด์„ ๋งŒ๋“ ๋‹ด์— ์˜ฎ๊ธฐ๋Š”? ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค.

์ž๋ฐ”์— ๋ณด๋ฉด ArrayList๊ฐ€ ์žˆ๋Š”๋ฐ ์–˜๊ฐ€ ๋ฐฐ์—ด์„ ๊ตฌํ˜„ํ•ด๋†“์€๊ฒƒ์ด๋‹ค. ๊ทธ ์ „์— vector๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ์ง€๊ธˆ์€ ๋งŽ์ด ์“ฐ์ด์ง€ ์•Š๋Š”๋‹ค. ์ฐจ์ด๊ฐ€ ๋ญ๋ƒ๋ฉด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ArrayList๊ฐ€ ๋” ์ตœ์ ํ™” ๋˜์–ด์žˆ๊ณ  ๋ฒกํ„ฐ๋Š” ๋™๊ธฐํ™”๋ฅผ ์ง€์›ํ•œ๋‹ค. ๋™๊ธฐํ™”๋ฅผ ์ง€์›ํ•œ๋‹ค๋ผ๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ด๋ƒ๋ฉด ๋‘๊ฐœ์˜ ์“ฐ๋ ˆ๋“œ๊ฐ€ ์ ‘๊ทผํ–ˆ์„ ๋•Œ ์ˆœ์„œ๋ฅผ ์ •ํ•ด์„œ ์ฒ˜๋ฆฌ๋ฅผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋งค๋ฒˆ ๋™์‹œ์— ์ ‘๊ทผํ•˜๋Š” ๋ฆฌ์†Œ์Šค์— ๋ฝ์„ ๊ฑธ์–ด์•ผํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์—ฌํŠผ ๊ฒฐ๋ก ์ ์œผ๋กœ ArrayList๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด๋œ๋‹ค.

ArrayList -> ๊ฐ์ฒด ๋ฐฐ์—ด์„ ๊ตฌํ˜„ํ•ด ๋†“์€ ์ž๋ฃŒ๊ตฌ์กฐ

jdk์—์„œ ArrayList์™€ vector๋ฅผ ๊ตฌํ˜„ํ•ด ๋†“์€๊ฒƒ์„ ์•Œ์ˆ˜์žˆ๋‹ค.

 

Linked List

๋ฐฐ์—ด์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ๋ฐ์ดํ„ฐ์™€ ๋งํฌ๋กœ ๊ตฌ์„ฑ์ด ๋˜์–ด์žˆ๋‹ค.

๋ฐฐ์—ด๊ณผ ๋น„๊ต๋ฅผ ํ•ด๋ณด์ž๋ฉด ๋ฐฐ์—ด๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ์‚ฝ์ž… ์‚ญ์ œํ•˜๋ฉด ์š”์†Œ๋“ค์ด ์ด๋™ n-1๋งŒํผ ์ด๋™์„ ํ–ˆ์–ด์•ผํ•˜๋Š”๋ฐ ์–˜๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๋…ธ๋“œ์—์„œ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒƒ์„ ๋Š๊ณ  ๋‹ค๋ฅธ ๋…ธ๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋ฉด ๋˜๋‹ˆ๊นŒ ์‚ฝ์ž…์‚ญ์ œ์— ๋“ค์–ด๊ฐ€๋Š” ๋น„์šฉ์ด ํ›จ์”ฌ ๋” ์ ๋‹ค.

์‹ญ๋งŒ๊ฐœ์˜ ์š”์†Œ๋ฅผ ๋‘๊ณ  ๋งจ์•ž์— ์žˆ๋Š” ๋†ˆ์„ ์‚ฝ์ž… ์‚ญ์ œํ•˜๋Š” ์‹คํ—˜์„ ํ–ˆ์—ˆ๋Š”๋ฐ ์–ผ๋งˆ๋‚˜ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜๋‚˜ ์‹œ๋ ‡ใ…์„ ํ–ˆ๋Š”๋ฐ ์–˜๊ฐ€ ๋” ๋น ๋ฅด๋‹ค๋Š” ๊ฒƒ์ด ๊ฒฐ๋ก ์ด ๋‚˜์™”๋”ฐ.

์š”์†Œ๊ฐ€ ๋งŽ์ด ๋ณ€ํ•œ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์œ ๋™์ ์ด๋‹ค -> LinkedList ์‚ฌ์šฉ

๋ฐ์ดํ„ฐ์˜ ๋ณ€ํ™”๊ฐ€ ์—†๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜๊ฐ€ ์ •ํ•ด์ ธ ์žˆ๋‹ค -> Array์‚ฌ์šฉ

jdk์—์„œ๋Š” LinkedList๊ฐ€ ๊ตฌํ˜„๋˜์–ด์žˆ๋‹ค.

 

Stcak & Queue

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

 

๋ฐ˜์‘ํ˜•
๋Œ“๊ธ€