자바의 Hash Table1. Hash Table• 해시 함수를 이용하여 효율적인 탐색(빠른 탐색)이 가능한 자료구조• key-value 쌍의 데이터를 저장하여, 데이터를 꺼낼 때 key를 통해 value를 가져올 수 있음.• 데이터를 저장하기 위해 배열을 내부적으로 사용.• 배열 형태로 저장한 데이터에 접근하는 인덱스를 만들기 위해 key 값을 해싱. - 해시(hash) : 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수. 입력이 같으면 출력도 같음. - Hash Table 내부에는 key값을 최적의 배열 인덱스 값으로 바꿔주는 해시 함수가 존재. - 이 해시 함수는 어떤 key값을 입력 받아아도 내부적으로 사용하는 배열의 크기보다 작은 정수를 결과로 출력해줌.• 즉..
컬렉션 • 컬렉션이란 코틀린 표준 라이브러리에서 제공하는 도구로써, 여러 요소들을 담을 수 있는 자료구조이다. • 배열과 다르게 초기화시 크기를 미리 정해놓을 필요도 없고, 크기가 고정되어 있지 않음. 1. 변경 가능 여부 • 변경이 가능하면 Mutable, 불가능하면 Immutable로 나눌 수 있다. • 컬렉션 요소의 변경이 필요한 상황이 아니라면 기본적으로 Immutable을 사용하는 것이 좋다. - 많은 코드 진행 후에도 해당 컬렉션이 바뀌었는지 안 바뀌었는지 추적할 필요 없이 믿고 사용할 수 있기 때문. 2. List • 인덱스로 접근 가능하고, 순서가 있는 자료 구조. • immutable - listOf(값1, 값2, ...) • mutable - mutableListOf(값1, 값2, ....