Just keep coding ...

[์ž๋ฃŒ๊ตฌ์กฐ] ๋ฐฐ์—ด(Array)๊ณผ ๋ฆฌ์ŠคํŠธ(List)

2024. 10. 27. 09:31ใ†์ž๋ฃŒ๊ตฌ์กฐ

728x90

๐Ÿ‘‰ ๋ฐฐ์—ด(Array)

  • ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ
  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ ๋‹ด๋Š” ๊ณต๊ฐ„์œผ๋กœ ์ดํ•ด ๊ฐ€๋Šฅ
  • ๋ฐฐ์—ด์€ ์ธ๋ฑ์Šค(index)๊ฐ€ ์กด์žฌ, ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘
  • ํŠน์ •ํ•œ ์ธ๋ฑ์Šค ์ง์ ‘์ ์œผ๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅ -> ์ˆ˜ํ–‰ ์‹œ๊ฐ„: O(1)
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐฐ์—ด์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋™์ ๋ฐฐ์—ด๋กœ ์ •ํ•ด์ ธ์žˆ์Œ

์žฅ๋‹จ์ 

  • ์บ์‹œ ํžˆํŠธ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์œผ๋ฉฐ, ์กฐํšŒ๊ฐ€ ๋น ๋ฅด๋‹ค.
  • ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๋ฏธ๋ฆฌ ์ง€์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด๋ฏ€๋กœ, ๋ฐ์ดํ„ฐ์˜ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ์— ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค.

๐Ÿ‘‰ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Linked List)

  • ๋ฐฐ์—ด๊ณผ ๋‹ค๋ฅด๊ฒŒ ํฌ๊ธฐ๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š๊ณ , ๋ฆฌ์ŠคํŠธ์˜ ํฌ๊ธฐ๋Š” ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ

์žฅ๋‹จ์ 

  • ์žฅ์ : ํฌ์ธํ„ฐ๋ฅผ ํ†ตํ•ด ๋‹ค์Œ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค๋Š” ์ ์—์„œ ์‚ฝ์ž…๊ณผ ์‚ญ์ œ๊ฐ€ ๊ฐ„ํŽธ
  • ๋‹จ์ : ํŠน์ • ๋ฒˆ์งธ์˜ ์›์†Œ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ๋Š” ์•ž์—์„œ๋ถ€ํ„ฐ ์›์†Œ๋ฅผ ์ฐพ์•„์•ผ ํ•˜๋ฏ€๋กœ, ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค.

 

๐Ÿ‘‰ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ JS์˜ ๋ฐฐ์—ด

  • JS์—์„œ๋Š” ๋ฐฐ์—ด ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.
  • ์ผ๋ฐ˜์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ์˜ ๋ฐฐ์—ด
  • JS๋ฐฐ์—ด์€ ์ผ๋ฐ˜ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ž„์˜์˜ ์ธ๋ฑ์Šค ์ด์šฉ -> ์ง์ ‘์ ์ธ ์ ‘๊ทผ ๊ฐ€๋Šฅ
  • JS๋ฐฐ์—ด์€ ๋™์  ๋ฐฐ์—ด ๊ธฐ๋Šฅ ์ œ๊ณต, ๋งจ ๋’ค์˜ ์œ„์น˜์— ์›์†Œ ์ถ”๊ฐ€ ๊ฐ€๋Šฅ
  • ๋ฐฐ์—ด ์šฉ๋Ÿ‰์ด ๊ฐ€๋“ ์ฐจ๋ฉด ์ž๋™์œผ๋กœ ํฌ๊ธฐ ์ฆ๊ฐ€
  • ๋‚ด๋ถ€์ ์œผ๋กœ ํฌ์ธํ„ฐ๋ฅผ ์‚ฌ์šฉ, ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ์˜ ์žฅ์ ๋„ ๊ฐ–๊ณ ์žˆ์Œ
  • ๋ฐฐ์—ด(Array) ํ˜น์€ ์Šคํƒ(Stack)์˜ ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
  • ํ(Queue)์˜ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋Š” ๋ชปํ•จ

 

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ 

  • ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠผ๋Š ๊ฐ ๋…ธ๋“œ๊ฐ€ ํ•œ ์ค„๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ
  • ๋‹ค์–‘ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ ๊ตฌํ˜„ ๊ฐ€๋Šฅ -> ์Šคํƒ, ํ ๋“ฑ

 

์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(Linked List) VS ๋ฐฐ์—ด(Array)

  • ํŠน์ • ์œ„์น˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•  ๋•Œ, ์ผ๋ฐ˜์ ์ธ ๋ฐฐ์—ด์—์„œ๋Š” O(N)๋งŒํผ์˜ ์‹œ๊ฐ„์ด ์†Œ์š”
  • ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ด์šฉํ•˜๋ฉด ๋‹จ์ˆœํžˆ ์—ฐ๊ฒฐ๋งŒ ๋Š์–ด์ฃผ๋ฉด ๋จ (์›์†Œ๋ฅผ ์‚ญ์ œํ•  ํ•„์š”๊ฐ€ ์—†์Œ)
  • ์‚ญ์ œํ•  ์œ„์น˜๋ฅผ ์ •ํ™•ํžˆ ์•Œ๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ O(1)์˜ ์‹œ๊ฐ„์ด ์†Œ์š”
  • ๋ฌผ๋ฆฌ์ ์ธ ์œ„์น˜๋ฅผ ํ•œ ์นธ์”ฉ ์˜ฎ๊ธฐ์ง€ ์•Š์•„๋„ ์‚ฝ์ž… ๊ฐ€๋Šฅ

 

 

์ถœ์ฒ˜: https://fastcampus.co.kr/dev_online_upjscodingtest

 

JavaScript ์ฝ”๋”ฉํ…Œ์ŠคํŠธ 131๊ฐœ ์˜ˆ์ œ & CS์ง€์‹์œผ๋กœ ๋๋‚ด๊ธฐ | ํŒจ์ŠคํŠธ์บ ํผ์Šค

25์‹œ๊ฐ„ ๋Œ€๋น„ ๊ณผ์ • / '์ฝ”ํ…Œ ๋ ˆ์ „๋“œ' ์œ ํŠœ๋ฒ„ ๊ฐ•์‚ฌ๋‹˜๊ป˜ ํ•ต์‹ฌ๋งŒ ๋ฐฐ์šฐ๊ณ  ๋น ๋ฅด๊ฒŒ ํ•ฉ๊ฒฉํ•˜์„ธ์š”.

fastcampus.co.kr

 

728x90