본문으로 건너뛰기

코딩 퀴즈 - 해시 테이블(Hash Table) 구현하기

코딩 퀴즈

이번 코딩 퀴즈는 자체 해시 테이블을 구현하고, 이를 활용해 특정 작업을 수행하는 프로그램을 작성합니다.

구현해야 할 해시 테이블은 키-값 쌍을 저장하고, 주어진 키에 대한 값을 검색하는 기능을 제공해야 합니다.

이 문제에서는 해시 테이블을 이용해 주어진 문자열 내의 각 문자가 몇 번 등장하는지를 계산하는 프로그램을 만듭니다.

해시 테이블 코드 템플릿
class HashTable:
def __init__(self):
self.size = 256
self.table = [[] for _ in range(self.size)]

def put(self, key, value):
hash_key = hash(key) % self.size

for item in self.table[hash_key]:
if item[0] == key:
item[1] = value
return

self.table[hash_key].append([key, value])

def get(self, key):
hash_key = hash(key) % self.size

for item in self.table[hash_key]:
if item[0] == key:
return item[1]

return None

def count_characters(self, string):
# 여기에 코드를 작성하세요
return # 여기에 코드를 작성하세요

def solution(s):
hash_table = HashTable()
return hash_table.count_characters(s)


제한 사항

  • 해시 테이블의 크기는 고정되어 있으며, 크기는 256으로 합니다.

입출력 예시

  • 입력: "hello"

  • 출력: {'h': 1, 'e': 1, 'l': 2, 'o': 1}