자료구조

배열

Bryan Lee 2022. 4. 22. 23:22

1) 배열의 목적 및 기능 

- 같은 종류의 데이터를 효율적으로 관리하기 위해서 사용함

- 같은 종류의 데이터를 순차적으로 저장함  

 

2) 배열의 장점 및 단점

장점 - 인덱스 번호만 알면 바로 데이터에 접근 가능함

단점 - 배열은 보통 길이가 정해져 있음 

 

3) 배열의 예시

Integer[] data_list = new Integer[10];
data_list[0] = 1;

Integer data_list1[] = {5,4,3,2,1};
Integer[] data_list2 = {1,2,3,4,5};

 

4) ArrayList

- Java에서 배열을 보다 손쉽게 다루기 위해 제공하는 클래스

 

4-1) List vs ArrayList

- List는 인터페이스이고, ArrayList는 클래스임

- List로 선언된 변수는 다른 리스트 클래스로 쓸 수 있는 유연함이 있음

- 자바 7 이상부터는 인스턴스 생성 시 타입을 추정할 수 있는 경우 타입을 생략할 수 있음

List<Integer> list1 = new ArrayList<Integer>();
list1 = new LinkedList<Integer>();

// 인스턴스 생성 시 타입 생략
ArrayList<Integer> list1 = new ArrayList<>();

- ArrayList는 다음과 같이 사용할 수 있음

import java.util.ArrayList;

ArrayList<Integer> list1 = new ArrayList<Integer>();

// 추가
list1.add(1);
// 추가
list1.add(2);
// 0번째 인덱스 값 반환
list1.get(0);
// 0번째 인덱스의 값을 5로
list1.set(0, 5);
// 0번째 인덱스 값 반환
list1.get(0);

 

5) 다차원 배열

- 다차원 배열은 다음과 같이 선언할 수 있음 

Integer data_list[][] = {{1,2,3}, {4,5,6}};

 

6) 결론

- 배열도 자료구조의 한 형태임

 

 

- 참고

한 번에 끝내는 코딩테스트 369 Java편 초격차 패키지 Online편 

 

'자료구조' 카테고리의 다른 글

링크드 리스트(3) - 더블 링크드 리스트  (2) 2022.04.28
링크드 리스트(2)  (0) 2022.04.26
링크드 리스트(1)  (0) 2022.04.24
스택  (0) 2022.04.23
  (1) 2022.04.23