-
Collection - List, Set, MapCS/자료구조 2023. 3. 7. 20:49
1. List
- 순서가 있음
- 중복 허용
- 크기가 가변적
- 인덱스로 원소에 접근 가능
1-1. LikedList
- 양방향 포인터 구조로 데이터 삽입, 삭제가 빠르다.
- ArryList보다 검색이 느리다.
1-2. ArrayList
- 단방향 포인터 구조로 데이터 순차적 접근에 강점을 가진다.
- 배열을 기반으로 데이터를 저장한다.
- 데이터 삽입, 삭제가 느리다.
- 데이터 검색이 빠르다.
2. Map
key, value 한 쌍으로 이루어지는 데이터 집합
key는 중복을 허용하지 않으며 순서를 보장하지 않는다.
높은 검색 속도를 원할 때 주로 사용된다.
인덱스가 따로 존재하지 않기때문에 iterator를 사용.
2-1. HashMap
- Key에 대한 중복이 없음, 순서를 보장하지 않음
- Key와 Value값으로 NULL 허용
- 동기화가 보장되지 않는다.
- 검색에 가장 뛰어난 성능을 가진다.
2-2. TreeMap
- 이진 탐색 트리를 기반으로 키와 값을 저장한다.
- Key 값을 기준으로 오름차순 정렬되고 빠른 검색이 가능하다.
- 저장 시 정렬을 하기 때문에 다소 오래걸린다.
3. Set
데이터의 집합, 순서가 없고 중복된 데이터를 허용하지 않음.
중복되지 않은 데이터를 구할 때 유용
빠른 검색 속도
인덱스가 따로 존재하지 않기때문에 iterator 사용.
'CS > 자료구조' 카테고리의 다른 글
Array vs List 차이점, LinkedList, ArrayList (0) 2023.04.25 HashMap vs LinkedHashMap 차이점 및 사용 (0) 2023.04.25