본문 바로가기

패스트캠퍼스 챌린지

패스트캠퍼스 챌린지 10일차

반응형

<학습일기>

* 블록체인에서 해쉬 구조를 확장해서 사용함.
* 검색에서 해쉬 테이블 구조가 보다 좋은 이유:
    배열의 경우 Trump의 값이 들어있는 것을 1번부터 찾아야함.
    해쉬의 경우에는 바로 찾을 수 있다.

1. 해쉬 구조
- Hash Table: 키에 데이터를 저장하는 데이터 구조
 - 키를 통해 바로 데이터를 받아올 수 있기 때문에 속도가 획기적으로 빨라짐
 - 파이썬 딕셔너리 타입이 해쉬 테이블의 예. key를 가지고 바로 data를 꺼냄
 - 보통 배열로 미리 Hash Table 사이즈만큼 생성 후에 사용(공간과 탐색 시간을 맞바꾸는 기법)
 - 단, 파이썬에서는 해쉬를 별도 구현할 이유가 없음. 딕셔너리 타입을 사용하면 되기 때문

2. 용어
- 해쉬(Hash): 임의 값을 고정 길이로 변환하는 것
 --> 아무리 방대한 길이라도 고정 길이로 가져올 수 있게한다. ex) 블록 체인
- 해쉬 테이블(Hash Table): 키 값의 연산에 의해 직접 접근이 가능한 데이터 구조
- 해싱 함수(Hashing Function): key에 대해 산술 연산을 이용해 데이터 위치를 찾을 수 있는 함수
 --> 키 값을 넣으면 해싱 함수를 통해서 해시 테이블에서 값을 찾아옴.
- 해쉬 값(Hash Value) 또는 해쉬 주소(Hash Address): Key를 해싱 함수로 연산해서, 해쉬 값을 알아내고, 이를 기반으로 해쉬 테이블에서 해당 Key에 대한 데이터 위치를 일관성 있게 찾을 수 있다.
 --> 키가 해싱 함수를 통과하면 나오는 결과를 해쉬값 혹은 해쉬 주소라 한다.
- 슬롯(Slot): 한 개의 데이터를 저장할 수 있는 공간
 --> 해쉬 테이블 내의 각각의 정보를 저장하는 공간을 슬롯이라고 한다.
- 저장할 데이터에 대해 Key를 추출할 수 있는 별도 함수도 존재할 수 있음.

<수강인증>

강의 수강
실습

*본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.*

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기

#알고리즘기술면접완전정복올인원패키지Online

반응형