목차
- Linked List 정의
- 자바에서의 Linked List 사용
✔ 알아두어야 할 용어
Node : 데이터저장 단위 (데이터 값, 포인터)로 구성
Pointer : 각 노드안에서, 다음이나 이전노드와의 연결정보를 가지고 있는 공간
사용 API
import java.util.LinkedList;
링크드리스트 선언
LinkedList<Integer> numList = new LinkedList<Integer>();
// LinkedList<>안에는 String등 다양한 데이터 타입을 선언할 수 있다.
링크드리스트 데이터 추가
numList.add(1);
// → Linked List에 "()" 안에 데이터 값 추가.
numList.add(1, 2);
// → numList.add(인덱스번호, 데이터);
numList.addFirst(1);
// → Linked List 맨 앞에 "()" 안에 데이터를 추가
numList.addLast(3);
// → Linked List 맨 뒤에 "()" 안에 데이터를 추가
링크드리스트 데이터 삭제
numList.remove(2);
// → Linked List "()" 안에 인덱스 번호에 해당되는 데이터를 삭제한다.
numList.clear();
// → Linked List엔아 모든 데이터를 삭제한다.
링크드리스트 크기 구하기
System.out.println("size : " + numList.size());
// → 현재 Linked List의 크기를 보여준다.
링크드리스트 데이터 출력
System.out.println(numList.get(1));
// → "()"안에 인덱스번호에 해당되는 데이터를 출력한다.
링크드리스트 데이터 검색
System.out.println(numList.contains(1));
// → 데이터 검색 (없으면 False 반환한다)
System.out.println(numList.indexOf(1));
// → 해당 데이터가 몇 번째 인덱스에 존재하는 지 확인 (없으면 -1 출력)