본문 바로가기
C++

연결리스트(Linked list)

by 영카이브 2022. 7. 26.
  • 링크드리스트 들어가기전 설명 

대량의 데이터를 저장하는데 주로 배열을 이용한다

*배열의 장점과 단점*

장점) 구현이 간단, 빠름

단점) 먼저 크기가 고정되기때문에 유동적으로 크기가 늘어나거나 줄어들을 수 없다 

         중간에 새로운 데이터를 삽입하거나 삭제하기 위해서는 기존의 데이터를 이동하여야 한다 

ex) a라는 배열이 있고 a[0] 과 a[1] 사이에 새로운 데이터를 넣으려면 a[1] 뒤의 값들이 한칸씩 밀리고 빈공간을 만들고 삽입한다 

 

  • 링크드리스트란?

링크드 리스트는 위 단점을 보완할 수 있는 자료구조이다. 

각각의 원소가 포인터를 사용하여 다음 원소의 위치를 가리킨다. 

포인터로 구현하기 때문에 새로운 데이터를 중간에 삽입하거나 삭제할 때 기존의 데이터의 이동이 필요 없다 .

 

장점 하나 더! ) 데이터를 저장할 공간이 필요하라 때마다 동적으로 공간을 만들어서 쉽게 추가할 수 있다.