자료구조

5.Hash_table.md 해시테이블 (hash table)유용한 자료 구조의 하나인 해시 테이블에 대해서 알아봄.1. 해시 함수의 소개식료품 가게에서 일을 하고 있다고 생각해보자. 손님이 물건을 사러 왔을 때 물건의 가격이 적혀져있는 장부를 찾아서 가격을 봐야 한다. 만약 장부가 정렬이 정렬이 되어 있지 않다면 만큼의 시간이 걸릴 것이다.정렬이 되어있다면 이진 탐색을 통해 만큼의 시간이 소요될 것이다. 두 차이는 크다.정렬이 되어있더라도 지속적으로 장부를 보고 찾는 일은 힘들 것이다. 이때 가장 필요한 것이 가격을 외우고 있는 동료가 옆에 있는 것.이를 자료 구조 관점으로배열과 리스트 2개의 자료구조를 학습하였다.장부 구조 시간에 찾아내고 싶어하는데 이를 가능하게 하는 것이 이다.2. 해시 함수해시 ..
4.Quick_Sort.md 퀵정렬분할 정복가장 간단한 경우로 기본 단계를 찾는다.주어진 문제를 작게 줄여서 기본 단계가 되도록 만드는 방법을 찾는다.예 (덧셈 함수)[1,2,3,4] xxxxxxxxxxdef sum(arr): total = 0 for x in arr: total += x return total print(sum([1,2,3,4]))1단계 : 기본 단계를 찾는다. 가장 간단한 경우는 배열의 원소 개수가 0개 또는 1개인 배열을 받으면 합계를 구하는 것.2단계 : 재귀 함수 호출을 할 때마다 호출 대상이 되는 배열의 크기가 점점 감소시켜야 한다. 결론 리스트를 받으면 크기를 구해 비어있으면 0을 반환 그렇지 않으면 총합은 리스트의 첫 번째 숫자와 나머지 리스트의 총합을 더한 값이 된다.퀵 ..
J_Today
'자료구조' 태그의 글 목록