[์ž๋ฃŒ๊ตฌ์กฐ] 04. Linked List

2021. 8. 15. 08:00ใ†์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ค€๋น„/์ž๋ฃŒ๊ตฌ์กฐ

728x90
๋ฐ˜์‘ํ˜•

์•ˆ๋…•ํ•˜์„ธ์š”? ์ฃผ๋‹ˆํ•˜๋ž‘ ์ž…๋‹ˆ๋‹ค.

์˜ค๋Š˜์€ ์ž๋ฃŒ๊ตฌ์กฐ์—์„œ ๋งํฌ๋“œ ๋ฆฌ์ŠคํŠธ(์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ)์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ ํ•ด ๋ณด๋„๋ก ํ•  ๊ฒƒ์ด์—์š”!

์ œ๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๊ฐ€ ๊ถ๊ธˆํ•˜์‹œ๋‹ค๋ฉด? ์ฃผ๋‹ˆํ•˜๋ž‘์˜ ๊นƒ ํ—ˆ๋ธŒ์— ๊ด€์‹ฌ์„ ์ฃผ์„ธ์š”!

๋ฐ”๋กœ ์‹œ์ž‘ ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!

 

 


๐Ÿ“Œ Linked List ( ์—ฐ๊ฒฐ List )


๋ฐฐ์—ด์€ ์ˆœ์ฐจ์ ์œผ๋กœ ์—ฐ๊ฒฐ๋œ ๊ณต๊ฐ„์— Data๋ฅผ ๋‚˜ํƒ€๋‚ธ ๊ตฌ์กฐ์ง€๋งŒ, Linked List๋Š” ๊ณต๊ฐ„์ด ๋–จ์–ด์ ธ ์žˆ์–ด๋„ Data๋ฅผ ๊ฐ€์ƒ์˜ ํ™”์‚ดํ‘œ๋กœ ์—ฐ๊ฒฐํ•ด์„œ ๊ด€๋ฆฌํ•˜๋Š” Data์˜ ๊ตฌ์กฐ์ธ ๊ฒƒ์ด์—์š”.

๋ณธ๋ž˜ C์–ธ์–ด์—์„œ๋Š” ์ฃผ์š”ํ•œ Data ๊ตฌ์กฐ์ง€๋งŒ, Python์€ List Type์ด Linked List๋ฅผ ๋ชจ๋‘ ์ง€์›ํ•œ๋‹ต๋‹ˆ๋‹ค!

 

    ๐Ÿ“ Linked List ๊ธฐ๋ณธ ๊ตฌ์กฐ์™€ ์šฉ์–ด

  • Node(๋…ธ๋“œ) : Data ์ €์žฅ ๋‹จ์œ„ (Data Value, Pointer)๋กœ ๊ตฌ์„ฑ
  • Pointer(ํฌ์ธํ„ฐ) : ๊ฐ Node ์•ˆ์—์„œ ๋‹ค์Œ ํ˜น์€ ์ด์ „์˜ Node์˜ ์ฃผ์†Œ๊ฐ’ (์—ฐ๊ฒฐ ์ •๋ณด)์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ณต๊ฐ„

 

         ๐Ÿ‘‰ ์ผ๋ฐ˜์  Linked List ํ˜•ํƒœ

 

 

    ๐Ÿ“ ๊ฐ„๋‹จํ•œ Linked List

 

          ๐Ÿ‘‰ Node ๊ตฌํ˜„

  • ๋ณดํ†ต Python์—์„œ Linked List ๊ตฌํ˜„์‹œ, Python Class ํ™œ์šฉ
  • Python ๊ฐ์ฒด์ง€ํ–ฅ ๋ฌธ๋ฒ• ์ดํ•ด ํ•„์š”

 

 

 

 

    ๐Ÿ“ Linked List ์žฅ, ๋‹จ์  (์ „ํ†ต์  C์–ธ์–ด์—์„œ์˜ ๋ฐฐ์—ด๊ณผ Linked List)

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

 

    ๐Ÿ“ Linked List ๋ณต์žกํ•œ ๊ธฐ๋Šฅ (Linked List Data ์‚ฌ์ด Data ์ถ”๊ฐ€)

         ๐Ÿ‘‰ Linked List ๋Š” ์œ ์ง€ ๊ด€๋ฆฌ์— ๋ถ€๊ฐ€์  ๊ตฌํ˜„ ํ•„์š”

์ถœ์ฒ˜: wikipedia, https://ko.wikipedia.org/wiki/Linked_list

 

 

 

 

 

 

๐Ÿ“Œ Doble Linked List (์ด์ค‘ ์—ฐ๊ฒฐ List)


  • Doble Linked List ๊ธฐ๋ณธ ๊ตฌ์กฐ
    • ์žฅ์ : ์–‘๋ฐฉํ–ฅ ์—ฐ๊ฒฐ๋กœ Node ํƒ์ƒ‰์ด ์–‘์ชฝ์œผ๋กœ ๊ฐ€๋Šฅ
      ์•ž์— ๊ฐ€๊นŒ์šด Node๋Š” ์•ž์—์„œ ํƒ์ƒ‰ํ•˜๊ณ , ๋’ค์—์„œ ๊ฐ€๊นŒ์šด Node๋Š” ๋’ค์—์„œ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ถœ์ฒ˜ : wikipedia, https://ko.wikipedia.org/wiki/Linked_list

 

 

 


 

์ฃผ๋‹ˆํ•˜๋ž‘์˜ ๊ธ€์ด ๋งˆ์Œ์— ๋“œ์…จ๋‚˜์š”? ๊ตฌ๋…๊ณผ ๊ณต๊ฐ! ๊ทธ๋ฆฌ๊ณ , ๋Œ“๊ธ€์€ ์ฃผ๋‹ˆํ•˜๋ž‘์—๊ฒŒ ๋งŽ์€ ํž˜์ด ๋ฉ๋‹ˆ๋‹ค

728x90
๋ฐ˜์‘ํ˜•