티스토리 뷰

자료구조

[자료구조]  리스트(List)에 대한 고찰

혀가 길지 않은 개발자 2020. 10. 21. 23:21

리스트(List)는 무엇인가?


리스트(List) : 어떤 자료의 원소(node, atom) 단위로 구성된 집합을 말하며 삽입과 제거가 가능한 순서적 자료의 집합이다.

 

리스트(List)는 크게 2개로 나눌 수 있다.

 

 

1. 선형리스트 (Linear List)

 

  1) 장점

    -  가장 간단한 리스트 구조

    -  순서적으로 검색하므로 Access time이 빠름

    -  기억 공간의 효율은 밀도 1로 가장 좋음

    

  2) 단점

    -  중간에 노드의 삽입과 제거가 어려움

    -  기억 장소로부터 종속적

    -  삽입과 제거가 번거로움

 

 

2. 연결리스트 (Linked List)

 

  1) 장점

    -  링크 부분의 주소만 변경하면 되므로 노드의 삽입과 삭제가 용이

    -  링크 포인터로 검색하므로 연속적으로 기억 공간이 없어도 노드의 저장이 가능

 

  2) 단점

    -  Access time이 느림

    -  알고리즘 구현이 복잡함

    -  링크 포인터를 사용하므로 연결 리스트가 배열보다 기억 공간이 많이 필요

 

  3) 연결리스트의 종류

    -  단일 연결 리스트 (Singly linked linear list)

    -  환상 연결 리스트 (Circularly linked linear list)

    -  이중 연결 리스트 (Doubly linked linear list)

    -  이중 환상 연결 리스트 (Doubly circularly linked linear list)

 

 

 

'자료구조' 카테고리의 다른 글

[자료구조]  배열(Array)  vs  리스트(List)  (0) 2020.10.21
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함