99클럽 코테 스터디 11일차 TIL + 리트코드 706번 Design HashMap(Python)

모래·2025년 4월 10일

99클럽 스터디

목록 보기
9/20
post-thumbnail

✔️오늘의 학습 키워드

  • 해시맵

  • 해시

  • 리트코드 706번 Design HashMap


✔️ 공부한 내용

📌 오늘의 문제


📌 작성 코드

class MyHashMap:

    def __init__(self):
        self.hash = [-1] * 1000001

    def put(self, key: int, value: int) -> None:
        self.hash[key] = value

    def get(self, key: int) -> int:
        return self.hash[key]

    def remove(self, key: int) -> None:
        self.hash[key] = -1

✔️ 오늘의 회고

📌 문제 및 시도 방법

해시테이블 라이브러리를 사용하지 말라고 해서 배열로 풀었다.

📌 문제 해결 방법

  1. hash 배열을 최대 길이가 10^6이므로 10^6+1 크기 배열 생성, 초기값 -1
  2. put(key,value) : 배열의 인덱스(key)에 value 값 설정
  3. get(key) : hash 배열의 인덱스(key)의 값(value)을 반환. 만약 없으면 초기값인 -1 반환.
  4. remove(key) : hash 배열의 인덱스(key)의 값을 -1로 설정(삭제한 것과 마찬가지)

📌 새롭게 안 내용

  • Hash Table이란, 키(Key)에 데이터(Value)를 저장하는 데이터 구조
    Key를 통해 데이터를 바로 받아올 수 있다.
    파이썬 딕셔너리(Dictionary) 타입이 해쉬 테이블의 예 - Key를 가지고 바로 데이터(Value)를 꺼낸다.

  • 하지만 여기서는 해시테이블 라이브러리 사용하지 말라고 해서 딕셔너리로 풀지 않았다.

📌 내일 학습할 내용

내일의 알고리즘 문제를 풀어보고 이해하기


#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL

profile
꾸준히 성장하는 웹 백엔드 개발자가 되자🔥

0개의 댓글