※ malloc()과 free()를 기반으로 하는 메모리 동적 할당에 완전한 이해가 선행되어야 한다
연결 리스트(Linked List)에 대해 알아보자
연결 리스트(Linked List)
- 배열 형태의 자료구조에서 더 발전된 개념으로 각각의 자료가 존재하고 그들을 특정 링크로 연결하는 것을 뜻한다
연결 리스트 구현
- 위에 언급한 바구니 하나를 노드(Node)라고 표현하고 노드는 다음과 같이 구성된다
- link에 다음으로 이어질 노드의 주소값을 삽입함으로써 노드끼리 순차적으로 연결한다
- 노드를 삽입할 때는 2가지의 경우가 존재한다
- 1. 연결 리스트의 가장 앞에 노드를 삽입하는 경우
- 2. 연결 리스트의 노드와 노드 사이에 삽입하는 경우
- 노드를 삭제할 때 또한 2가지의 경우가 존재한다
- 1. 삭제할 노드가 연결 리스트의 가장 마지막 노드인 경우
- 2. 삭제할 노드가 연결 리스트의 노드와 노드 사이에 존재하는 경우
'CS Studies' 카테고리의 다른 글
[자료구조 트리] What is Binary Tree? / 이진 트리란? (0) | 2021.01.17 |
---|---|
[자료구조 트리] What is Tree? / 트리란? (0) | 2021.01.17 |
[자료구조 큐] What is Queue? / 큐란? (0) | 2021.01.17 |
[자료구조 스택] What is Stack? / 스택이란? (0) | 2021.01.17 |
[자료구조 기초] Asymptotic Notation / 점근표기법 / 빅-오 표기법(Big-O Notation) / 빅-오메가 표기법(Big-Omega Notation) / 빅-세타 표기법(Big-Theta Notation) (0) | 2021.01.17 |