CS/Data Structure & Algorithm

배열(Array) vs 리스트(list)

Coding Kitsune 2022. 1. 28. 20:57

자료구조에서 배열이라 함은, 가장 기본적이고 순차적인 자료구조이며 매우 중요하게 다루기 때문에

 

대부분의 교재 및 강의에서 앞쪽에 배치되어있다.

 

배열과 리스트를 명확하게 구분하는것은 쉽지 않으며, 구조적 차이를 가지고 있다.

 

Array =>연속된 메모리 공간에 할당   List => 메모리가 연속적이지 않고 다음 노드가 가르키는 주소값을

 

가지고 있다. C에서는 읽기 쓰기 밖에 지원이 안되는데 반면, Python의 리스트는 다양한 연산들

 

(append,pop,insert,remove,index)을 제공한다. 또 List는 용량을 자동조절하는 기능도 있다.(=Dynamic Array)

 

구현이 복잡하지만, 삽입/삭제  연산이 많을때는 리스트 자료구조를 사용하는것이 효율적이다.