hashing2 [Hash]36. Hashing 구현 목차 1. class Hashtable 2. __main__ 3. 예상 출력값 1. class Hashtable 사실 python에서는 이미 hashing에 의해 작동되는 함수들이 많지만, cs를 공부하는 의미로 제작해 보도록 하겠습니다. class Hashtable: def __init__(self): self.table = [None for _ in range(13)] def full(self)-> bool: tmp = True for i in self.table: if i==None: tmp = False break return tmp def put(self, key: int, value: str): if not(self.full()): while True: if self.table[key%13]=.. 2021. 3. 10. [Hash]35. Hashing 목차 1. Hashing 정의, 기본 개념 2. Hashing 충돌 관리 3. Separate Chaning 4. Linear Probing 5. Double Hashing 1. Hashing 정의, 기본 개념 Hashing은 데이터를 (key, value)화 시켜서 빠르게 저장하고, 빠르게 불러오는 방식을 말합니다. 사실 제가 활용하는 파이썬에서는 이미 딕셔너리가 hashing으로 구현되어 있지만, 그래도 한번 개념을 정리해보고 구현해보도록 하겠습니다. Hashing의 최종 목표는 골고루, 공평하게 데이터가 펼져디고록 배분하는 것이 최종 목표 입니다. 만일 정해진 규칙에 의하여 배분하였을 시 뒤에 서술하겠지만 충돌이 발생할 경우, 이를 해결하기 위한 방법을 마련해야 하기 때문입니다. Hashing의 기.. 2021. 3. 10. 이전 1 다음