연결 리스트(Linked List) |
배열과같이 연속적인 메모리 위치에 저장되지 않고 포인터를 사용하여 연결하는 선형 데이터 구조이다. 각 노드는 데이터 필드와 다음 노드에 대한 참조를 포함하는 노드로 구성이 된다.
- Linked List(연결 리스트)를 사용하는 이유? 배열은 비슷한 유형의 선형 데이터를 저장하는데 사용할 수 있지만 (1) 배열의 크기가 고정되어 있어서 미리 요소의 수에 대해 할당을 받아야 하는 문제와 (2) 새로운 요소를 삽입하는 것이 비효율적(비용이 많이 듬)이다. 공간을 만들고, 기존 요소를 전부 이동하는..
- Linked List는 언제든지 붙이고 뗄수있는 동적 크기를 갖고, 삽입/삭제가 용이하다는 장점을 갖는다.
- Linked List는 임의로 액세스를 허용할 수 없다는 단점이 있다. 즉, 첫 번째 노드부터 순차적으로 요소에 액세스 해야한다. (이진 검색 수행 불가능) 또한 포인터의 여분의 메모리 공간이 목록의 각 요소에 필요하다.
내용 추가 예정(200417)
코드를 보고 이해 |
'백준 > 알고리즘 이론정리' 카테고리의 다른 글
[알고리즘 이론] 큐(Queue) (0) | 2020.04.15 |
---|---|
[알고리즘 이론] 스택(Stack) (0) | 2020.04.13 |
[필수알고리즘, python] 연결 리스트(Linked list) (0) | 2019.11.07 |