반응형
가장 중요한 두가지는
-
데이터가 순서대로 저장된다.
-
중복 저장을 허용한다.
- Array 와 List 비교
List는 데이터가 연속되어 있다!
추가할때 어떤 다른 양상을 보이는가?
배열: 값 덮어쓰기
리스트: 한칸 밀기
삭제할때는?
배열: 비게 됨
리스트: 한칸 당기기
- 리스트의 기능은?
처음, 끝, 중간에 엘리먼트를 추가 / 삭제
리스트에 데이터가 있는지 확인
모든 데이터에 접근 가능
- Java의 배열과 리스트
배열:
int[] numbers= {1,2,3,4,5};
리스트:
ArrayList numbers= new ArrayList();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
- Java는 리스트를 두 가지 지원한다
ArrayList: 추가 / 삭제가 느리다, 인덱스 조회가 빠르다
LinkedList: 추가 / 삭제가 빠르다, 인덱스 조회가 느리다
(자바로 배우는 자료구조로 공부하며 개인적으로 필기하는 글입니다.)
https://programmers.co.kr/learn/courses/17/lessons/803
자바로 배우는 자료구조(with 생활코딩) - 리스트(List)의 개념 | 프로그래머스
리스트(List)의 개념 배열은 데이터를 그룹핑해서 다수의 데이터를 효율적으로 관리하는 데이터 스트럭쳐입니다. 배열의 가장 큰 특징은 인덱스가 있다는 점이지요. 이 인덱스는 데이터를 매우 빠르게 가져옵니다. 하지만 인덱스를 써 데이터를 가져오려면 각 데이터의 인덱스 값이 고정되어야 합니다. 또 어떤 엘리먼트를 삭제하면 삭제된 데이터가 있던 자리는 비워둬야 해 메모리가 낭비됩니다. 또 배열에 데이터가 있는지 없는지 항상 확인해야 합니다. 리스트는 배열의 장
programmers.co.kr
반응형
'Programming > 자료구조' 카테고리의 다른 글
ArrayList (0) | 2019.04.10 |
---|---|
Array (배열) - Java API (0) | 2019.04.10 |
Data Structure란 (0) | 2019.04.10 |
[자료구조] 큐(Queue) (0) | 2019.02.15 |
[자료구조] 스택(Stack) (0) | 2019.02.15 |
댓글