문돌이 존버/프로그래밍 스터디
2021. 2. 8.
Hash table, 비전공자 문돌이가 설명하는 파이썬(Python) 기본 문법 (7)
1. 해시(Hash)란? Set과 Dictionary에선 원소를 검색하는 것의 시간 복잡도는 O(1) 입니다. 이유는 Hash라는 기법을 사용하기 때문인데요. 차근차근 알아보겠습니다. L = [1, 3, 5, 10] 이라는 리스트가 있다고 합시다. 그러면 아래 테이블과 같이 표시될 것입니다. 하지만 데이터 자체를 인덱스로 생각하면 어떨까요? 이는 Data indexed arrays라는 개념인데, 아래 테이블을 보면 이해할 수 있습니다. [1, 3, 5, 10] 자체를 인덱스로 생각하고, 해당 인덱스의 값들은 boolean 타입으로 표시하는 것입니다. Data indexed arrays는 처음 선언할 때 인덱스 값들이 모두 Flase입니다. 나중에 어떤 원소가 추가될 때는 해당하는 인덱스 값을 True로 ..