[ 자료구조 ] 배열

↗️ 배열 관련 함수정리

인덱스와 값을 일대일 대응해 관리하는 자료구조

  • 임의 접근(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. 할당할 수 있는 메모리 크기 확인
    • 배열로 표현하려는 데이터가 너무 많으면 할당에 실패할 수 있음
    • 보통 정수형 1차원 배열은 1000만개, 2차원 배열은 3000*3000 크기를 최대로 생각함
  2. 중간에 데이터 삽입이 많은지 확인
    • 선형 자료구조이므로 중간이나 데이터를 빈번하게 삽입하면 시간 복잡도 증가

'코딩테스트 > 개념정리' 카테고리의 다른 글

[ 알고리즘 ] 재귀(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