[Python]Hash

SOOJIN·2021년 5월 9일
0

algorithm

목록 보기
13/25

해시

  • 데이터를 다루는 기법 중 하나로 검색과 저장이 아주 유용한 구조
  • key와 value 쌍으로 데이터를 저장한다.

해시함수

  • 임의의 길이를 갖는 메시지를 입력받아 고정된 길이의 해시값을 출력하는 함수

  • 집합과 배열은 인덱스로 불가능

  • 딕셔너리 삭제

딕셔너리 활용

딕셔너리 루프

hash = dict()
for i in range(1,6):
	hash[i]=i**2

for k in hash.keys():
	print(k)
    #1
    #2
    #3
    #4
    #5
    #6

for v in hash.values():
	print(v)
    #1
    #4
    #9
    #16
    #25

for k,v in hash.items():
	print(k,v)
   	#1 1
    #2 4
    #3 9
    #4 16
    #5 25

딕셔너리 정렬

  • sorted() 언제나 list 타입을 반환
hash = dict({1:10,3:12,5:7,7:6,4:5})

#오름차순 정렬 
sorted(hash.keys(),key = lambda x:x)
#[1,3,4,5,7]

sorted(hash.values(),key = lambda x:x)
#[5,6,7,10,12]

sorted(hash,items,key = lambda x:x)
#[(1,10),(3,12),(4,5),(5,7),(7,6)]

#내림차순 정렬
sorted(hash.keys(),key = lambda x:-x)
#[7,5,4,3,1]

sorted(hash.values(),key = lambda x:-x)
#[12,10,7,6,5]

sorted(hash,items,key = lambda x:-x)
#ERROR

sorted(hash,items,key = lambda x:-x[0])
#[(7,6),(5,7),(4,5),(3,12),(1,10)]

0개의 댓글