210128 자료구조(Data structure) Array(배열)

이번 포스팅에서 정리 할 내용은

배열에 대한 개념이다. 파이썬에서는 리스트 타입이 배열의 기능을 제공하지만, c언어의 경우에는 배열을 독립적으로 사용한다.
배열이란 데이터를 나열하고, 각 데이터를 인덱스에 대응하도록 구성한 데이터 구조를 말한다.

그럼 배열이 왜 필요해?

데이터에는 다양한 종류가 있고, 이러한 데이터들을 같은 종류로 분류해서 효율적으로 관리하기 위해서 배열이 사용된다.
배열의 장점은 index 번호로 접근하기 때문에 특정위치에서 상대ㅐ적인 위치로의 데이터 접근이 빠르다는 장점을 가지고 있다. index 번호를 통해서 데이터에 접근을 하기 때문에, O(1)만큼의 시간복잡도를 갖는다.
배열의 단점데이터의 추가/삭제의 어려움이 있다는 점이다. 미리 최대 길이를 지정해서, 한정된 자원내에서 데이터를 관리해야 되기 때문이다.