본문 바로가기

Data Structure2

Set과 Hash Table Set은 중복된 원소를 포함하지 않고 순서가 상관없는 원소들의 컬렉션을 나타내는 개념으로 집합의 개념과 같다.(집합 역시 {1, 9, 6, 4}처럼 중복과 순서가 없다.) Set은 여러 가지 방법으로 구현될 수 있지만, 가장 일반적으로 사용되는 구현 방법은 해시 테이블(Hash Table)을 기반으로 한다. 해시 테이블에서는 Key가 중복될 수 없고 데이터는 순차적이 아니라 랜덤하게 저장한다. 해시 테이블의 이런 특징은 Set의 개념과 일치하기 때문에 Set을 구현할 때는 해시 테이블의 Key에 데이터를 저장하는 형태로 구현을 하게 된다. Hash Table 해시 테이블은 (Key, Value)로 데이터를 저장하는 자료구조 중 하나로 빠르게 데이터를 검색할 수 있는 자료구조다. 해시 테이블이 빠른 검색속.. 2023. 9. 6.
List와 Set의 차이 List와 Set은 실무에서 자주 쓰는 개념이다. 두 타입의 차이를 잘 알고 있다면 기본기도 탄탄하게 하고 상황에 따라 List를 쓰는게 더 유리한지 Set을 쓰는게 더 유리한지 판단하는데 도움이 될 것이다. 개념적인 차이 List 같은 종류의 아이템을 저장 순서를 보장 중복을 허용 Set 같은 종류의 아이템을 저장 순서를 보장하지 않음 중복을 허용하지 않음 개념적인 차이를 필자가 좋아하는 야구를 주제로 간단한 예시를 들어 설명해보면 올해 한국 프로야구에서 한번이라도 홈런을 친 선수(모든 선수의 이름은 다 다르다고 가정)를 저장하려면 List와 Set 중에서 어떤 타입을 쓰는게 좋을까? 예시를 잘 살펴보면 모든 선수들의 이름은 다 다르다고 가정했으니 홈런을 친 선수들을 저장할때 중복을 허용할 필요가 없어.. 2023. 9. 2.
반응형