인덱스와 값을 일대일 대응해 관리하는 자료구조
- 임의 접근(random access) : 어떤 위치에 있는 데이터든 한 번에 접근 가능
배열 선언
//int형 배열 선언
int[] arr = {0,0,0};//방법1
int[] arr = new int[3];// 방법2
// 배열 선언 및 초기화
int[] arr = new int[3];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
// 2차원 배열
int[][] arr = {{1,2,3}, {4,5,6}};
✨ ArrayList
배열과 유사한 기능을 가진 자료구조
- Array : 처음 선언할 때 배열의 크기 결정 ⇒ 정확한 데이터 개수를 알 수 있을 때
- ArrayList : 크기가 동적 ⇒ 저장해야 할 데이터의 개수를 정확히 알 수 없을 때
⚠️ 배열 선택 시 고려할 점
- 할당할 수 있는 메모리 크기 확인
- 배열로 표현하려는 데이터가 너무 많으면 할당에 실패할 수 있음
- 보통 정수형 1차원 배열은 1000만개, 2차원 배열은 3000*3000 크기를 최대로 생각함
- 중간에 데이터 삽입이 많은지 확인
- 선형 자료구조이므로 중간이나 데이터를 빈번하게 삽입하면 시간 복잡도 증가
'코딩테스트 > 개념정리' 카테고리의 다른 글
[ 알고리즘 ] 재귀(Recursion) (0) | 2025.04.25 |
---|---|
[ 자료구조 ] Hash (0) | 2025.04.20 |
[ 자료구조 ] Queue (0) | 2025.04.06 |
[ 알고리즘 ] Dijkstra Algorithm (0) | 2025.01.08 |
[ 알고리즘 ] BackTracking (0) | 2024.12.30 |