링크드리스트 (Linked List)의 종류와 특징
in Devlog on Data Structure

Linked List란
Linked List(연결 리스트)는 각 노드들이 일자로 링크(연결) 되어 있는 구조를 말합니다. 각각의 노드는 자신 다음의 노드나 이전 노드를 가르키고 있습니다.
Linked List의 종류
- 단일 연결 리스트
- 이중 연결 리스트
- 원형(선형) 연결 리스트
구현 API ( 간단하게 )
- int InsertNode(T newData, bool addTail = true)
- 노드를 맨 앞이나 맨 뒤에 추가한다.
- int InsertNode(T newData, int index)
- 노드를 원하는 index에 삽입한다.
- int RemoveNode(T removeData, bool matchRemoveAll = false)
- 데이터와 일치하는 노드를 삭제한다.
- int RemoveAt(int index)
- 원하는 인덱스의 노드를 삭제한다.
- void PrintNode()
- 모든 노드를 출력한다.
단일 연결 리스트
특징
- 각 노드는 자신의 다음 노드만 가르킵니다.
구현 코드
이중 연결 리스트
특징
- 각 노드는 자신의 이전과 다음의 노드를 가르킵니다.
구현 코드
원형 연결 리스트
특징
- 시작 노드와 끝노드가 이어져 있습니다.