[Data Structure] List

Greenddoovie·2021년 12월 16일
0

자료구조

목록 보기
4/9

배열과 비슷한 자료구조형이지만 편리한 기능을 더 많이 가지고 있다.

특장점

Array(배열)과 달리 고정된 크기가 아니다

사용시기

동적으로 자료형의 갯수가 변하는 경우

Interface

보통 interface 형태로 구현체를 사용한다

ArrayList

List 인터페이스를 구현한 자료형
Array의 크기 동적으로 변경

Method

add
remove
get
size
contains

삽입, 삭제

삽입 ,삭제 시 해당하는 인덱스의 뒤의 원소들이 1칸 씩 이동(앞, 뒤)한다

Linked List

List 인터페이스를 구현한 자료형
노드간에 연결을 통해 리스트로 구현된 객체

특장점

다음 노드의 위치 정보를 가지고 있음
인덱스를 가지고 있지 않음
탐색 시 순차접근만 가능
추가/삭제는 위치정보의 수정만으로 가능하기 때문에 성능이 좋음

Method

add, offer (IllegarStateException vs X)
remove, poll (NoSuchElementException vs Null)
element, peek (NoSucheElementException vs Null)

ArrayList, LinkedList 사용 시기

1) ArrayList는 인덱스를 통한 접근이 용이하지만 삽입, 삭제 시 원소들이 이동하므로 조회할 때 유리하고

2) LinkedList는 인덱스를 통한 접근이 별로이지만 삽입, 삭제는 위치정보의 수정만으로 가능하므로 데이터 교체가 빈번한 경우에 좋다

profile
기초를 이해하면 세상이 다르게 보인다

0개의 댓글