노드 : 데이터 저장 단위로, 값과 포인터로 구성된다.
import java.util.LinkedList;
LinkedList<Integer> list = new LinkedList<>();
list.add(val) : 맨 뒤에 val추가
list.add(idx, val) : idx위치에 val추가
list.addFirst(val) : 처음에 val추가
list.addLast(val) : 마지막에 val추가
list.set(idx, val) : 특정 위치에 노드 추가
list.removeLast(): 마지막 노드삭제
list.removeFirst() : 첫번째 노드 삭제
list.get(idx) : idx위치 값 반환
list.contains(val) : val의 포함 여부 반환
list.size() : list의 크기 반환
head 추출
list.getFirst()
list.peek()
list.peekFirst()
tail추출
list.getLast()
list.peekLast()
head 추출 후 삭제
list.poll()
list.pollFirst()
tail 추출 후 삭제
list.pollLast()
동작 | 시간복잡도 |
---|---|
접근 | |
추가 / 제거 |
링크드 리스트는 삽입 / 삭제가 자주 일어나는 동적 데이터를 관리하기에 용이하다!