본문 바로가기
Algorithm/바킹독의 알고리즘 강의

연결 리스트

by IT learning 2021. 4. 10.
728x90

1. k번째 원소를 확인/변경하기 위해 O(k)가 필요함.

    ㄴ 연결 리스트의 구조상 어쩔수 없음. 무조건 k를 거쳐야 하기 떄문.

2. 임의의 위치에 원소를 추가/임의 위치의 원소 제거는 O(1).

3. 원소들이 메모리 상에 연속해있지 않아 Cache hit rate가 낮지만 할당이 다소 쉬움.

 

연결 리스트의 종류

 

단일 연결 리스트 (Singly Linked List)

 

이중 연결 리스트 (Doubly Linked List)

 

원형 연결 리스트 (Circular Linked List)

 

 

배열 vs 연결 리스트

  배열 연결 리스트
k번째 원소의 접근 O(1) O(k)
임의 위치에 원소 추가/제거 O(N) O(1)
메모리 상의 배치 연속 불연속
추가적으로 필요한 공간
(Overhead)
- O(N)

STL List는 이중 연결 리스트 (Doubly Linked List) 이다.

 

 

728x90

'Algorithm > 바킹독의 알고리즘 강의' 카테고리의 다른 글

스택  (0) 2021.04.12
연결 리스트 손코딩 문제들  (0) 2021.04.12
배열에 0 채우기 좋은 방법  (0) 2021.04.09
배열의 정의와 성질  (0) 2021.04.08
표준 입출력  (0) 2021.04.07

댓글

IT_learning's Commit