개발/자료구조
[자료구조] 배열(Array)이란?
난중후니
2022. 12. 29. 18:37
728x90
반응형
배열(Array)이란?
- 데이터를 메모리 상에서 연관된 데이터를 순차적으로 저장하며 메모리를 정적인 크기로 할당 받아 이후 크기 변경이 불가능합니다.
- 인덱스를 통해서 배열에 있는 요소에 접근 할 수 있습니다.
ex) int[] intArray = new int[3];
Index | 0 | 1 | 2 |
Data | 0 | 0 | 0 |
장점
- index를 가지고 있기 때문에 데이터에 바로 접근이 가능합니다.
- 조회시 index를 통해 조회하기 때문에 시간 복잡도 O(1)로 갖게 되며 자료 구조의 크기가 클 수록 더욱 효율적입니다.
단점
- 배열을 생성할 때 크기를 정해야 합니다.
- 배열을 생성 후 크기 변경이 불가능하기 때문에 데이터의 수와 맞지 않으면 데이터를 담지 못하거나 메모리 낭비가 있습니다.
- 배열은 변경만 가능하며 삽입, 삭제가 불가능합니다.
배열을 사용하기 좋은 상황
- 데이터의 개수가 확실히 정해져 있을 때
- 삽입/삭제 작업이 거의 없고 조회와 데이터 변경만 이용할 시
- 배열에 저장된 데이터를 검색하는 작업이 많을 때
728x90
반응형