자료구조에서 배열이라 함은, 가장 기본적이고 순차적인 자료구조이며 매우 중요하게 다루기 때문에
대부분의 교재 및 강의에서 앞쪽에 배치되어있다.
배열과 리스트를 명확하게 구분하는것은 쉽지 않으며, 구조적 차이를 가지고 있다.
Array =>연속된 메모리 공간에 할당 List => 메모리가 연속적이지 않고 다음 노드가 가르키는 주소값을
가지고 있다. C에서는 읽기 쓰기 밖에 지원이 안되는데 반면, Python의 리스트는 다양한 연산들
(append,pop,insert,remove,index)을 제공한다. 또 List는 용량을 자동조절하는 기능도 있다.(=Dynamic Array)
구현이 복잡하지만, 삽입/삭제 연산이 많을때는 리스트 자료구조를 사용하는것이 효율적이다.
'CS > Data Structure & Algorithm' 카테고리의 다른 글
큐를 활용한 문제 [Josephus problem] (0) | 2022.02.02 |
---|---|
Queue (FIFO, 순차적자료구조) (0) | 2022.02.02 |
Infix(중위표기법) -> Postfix(후위표기법), 그리고 스택 계산 (0) | 2022.01.29 |
Stack (LIFO, 순차적자료구조) (0) | 2022.01.28 |
자료구조란, 그리고 알고리즘 (0) | 2022.01.28 |