[자료구조] 배열, 다차원 배열, 가변 배열

송칭·2024년 9월 23일
0

자료구조

목록 보기
1/2

배열 (Array)

동일한 데이터 타입을 가진 요소들이 연속된 메모리 공간에 저장된 자료 구조.
배열의 크기는 고정되어 있으며 선언 시 미리 정해진다.

int[] array = new int[3];  // 크기가 3인 정수형 배열 선언
array[0] = 1;
array[1] = 2;
array[2] = 3;

메모리 주소가 연속되는 것을 전제하기 때문에 각 원소에 빠른 접근이 가능하지만, 크기를 늘리고 줄이는 것이 어렵다. 배열의 각 요소는 인덱스를 사용해 접근할 수 있으며, 0부터 시작한다. 배열 안의 모든 요소는 같은 데이터 타입을 가져야 한다.

다차원 배열 (Multidimensional Array)

다차원 배열은 배열 안에 또 다른 배열을 가지는 형태로, 2차원, 3차원 등의 다차원 데이터를 표현할 수 있다.

int[,] matrix = new int[2, 3]; // 2차원 배열
int[,,] cube = new int[2, 2, 2]; // 3차원 배열

다차원 배열의 차원 수는 선언할 때 정해지며 각 차원의 크기 또한 마찬가지다. 그리고 배열이 생성된 후에는 변경이 어렵다.

가변 배열 (Jagged Array)

가변 배열은 다차원 배열의 변형으로 "배열의 배열"이다. 가변 배열은 각 행이 다른 길이를 가질 수 있어 유연성이 뛰어나다는 장점이 있다.

가변 배열의 각 하위 배열은 독립적으로 선언되고, 각기 다른 크기나 구조를 가진다. 이는 메모리 효율에 큰 도움을 주며 다양한 형태를 가진 비정형 데이터를 처리하는데 적합하다.

int[][] array = new int[3][];
array[0] = new int[2];
array[1] = new int[3];
array[2] = new int[1];
profile
게임 클라이언트

0개의 댓글