#hashing
2
FundamentalTILAlgorithm
알고리즘; 해싱 #2, 스택, 정렬
2월 4일 목요일 알고리즘 스터디에서 진행한 프로그래머스 문제 풀이다. 브레인스토밍과 채점이 끝나고 다른사람의 코드 보기를 보면 파이써닉한 코드가 많은데 그렇게까지 해야 할 필요가 있나 싶다.. 같은 카테고리로 dictionary를 만든다 dictionary key의 길이를 구한다 (총 카테고리의 개수) n개의 카테고리중 1개만 입는 경우를 구한다 → 각 카테고리의 원소 개수를 전부 합한다. 2~n개 까지는 combinations 함수를 통해 구한다 → 각 카테고리 원소 개수를 곱한다. 3과 4에서 구한 경우의 수를 모두 합한다.
FundamentalTILAlgorithm
알고리즘; 문자열 해싱 #1
교집합 슬라이딩 윈도우 참가자와 완주자의 명단에서 완주하지 못한 참가자를 가져온다. 두 리스트의 교집합을 증명하는 과정에서 완주자와 비교해 참가자를 반환한다 (완주하지 못한 참가자) 소스코드 리스트 내 원소에 대해 슬라이딩 윈도우로 비교하고 요구조건에 따라 boolean을 반환한다. 소스코드 첫번째 시도 : dictionary를 만든 후 set으로 원소 생성 → 실패 두번째 시도 : list 원소를 단순 조합하여 set으로 요구조건 원소 생성 → 테스트 케이스는 통과하지만 효율성에서 모두 탈락 세번째 시도 : 순서에 상관없는 조합(