나중에 채우기
https://mgyo.tistory.com/161
오늘부터는 실전 알고리즘이다
중요한거 목요일부터는 실전주차라는거
오늘꺼는 쉽다고 했으니까 최대한 주특기 넘어가기 전에
알고리즘을 정리해두자!
실전코테에서 자주쓰는 모듈 메모
re : 정규표현식 모듈. 영문 대소문자 특수문자 필터
math : 수학공식 모듈. 제곱 나누기 그런거
컬렉션즈 모듈 안에 이거 3개
counter : 딕셔너리 확장 모듈 숫자찾는 모듈
deque : 스택+큐 모듈. 데이터 순서나 필터
defaultdict : 딕셔너리 도와주는 애
heapq : 힙큐 모듈 . 리스트 => 힙, 데이터 자동정렬
itertools : 이터러블한 애들을 뽑아줌, 순열 모듈
각 모듈의 쓰임새와 전용내장함수, 실제 문제 5개씩 정리하기
내장모듈
bisect : 이진검색모듈
sort, sorted : 정렬모듈
zip : 튜플로 묶어주는 거 311 언패킹도 정리
enumerate 와 range의 차이 : 에뮬레이트 얘도 찾아보자
split : 스플릿에 괄호를 하면 구분자가 남는다거나
map : 데이터 분리
딕셔너리, 튜플형 다루기 정리
다이나믹
이진탐색 : 리스트에서 최단거리가 가장 먼거 찾기
1. 가장 먼 최단거리의 개념에 대해 익숙해지기
2. 1차원을 입체적으로 파악하기(각 좌표는 겹치지 않는 일직선상에 있다)
다익스트라 : 그래프에서 '비용'이 서로다른 문제일때 최단거리가 가장 먼거 찾기
1. '접근가능한', '비용', '좌표' 세가지 중 하나정도는 고정값으로 생략될 수 있음 주의. 어쨌든 1차원이 아니라 2차원 리스트 = 그래프이다!
2. 2d 그리드맵의 개념에 대해 익숙해지기(대각선으로는 못간다)
플로이드 : 모든 간선에 접근함으로써 최단거리를 찾아내는 알고리즘
응용해서 모든 간선에 접근 가능한 노드가 몇개인지 찾는 문제에 쓸 수 있다!
피보나치 수열 풀이법 외우기
열심히 외우기...