📘 이 글은 "파이썬 알고리즘 인터뷰"를 보고 정리했으며, 스터디를 진행하며 정리하는 내용이다.
동아리에서 알고리즘 스터디를 새롭게 시작했다.
그동안 공부해보고 싶었던 책을 통해서 짜임새 있게 공부를 하려고 한다.
기존에는 다음에 다시봐야겠다고 생각하고 넘어간적이 많았는데
이번에는 멘토도 맡게된 김에 모든 질문에 대답할 수 있을 정도로 꼼꼼하게 공부하고 싶다.
class Solution:
과 들여쓰기를 한 후 내가 작성한 코드를 써 제출해야한다.import collections
import heapq
import functools
import itertools
import re
import sys
import math
import bisect
from typing import *
Counter
: 시퀀스의 요소를 세어줍니다.
deque
: 양쪽 끝에서 빠르게 추가 및 제거가 가능한 리스트 타입의 컨테이너입니다.
OrderedDict
: 삽입된 순서를 기억하는 딕셔너리입니다.
힙 큐 알고리즘, 즉 우선순위 큐 기능을 제공합니다.
heappush(heap, item)
: 아이템을 힙에 추가합니다.
heappop(heap)
: 힙에서 가장 작은 아이템을 제거하고 반환합니다.
고차 함수와 관련된 함수를 위한 모듈입니다. 함수를 인자로 받거나 반환하는 함수들을 다룹니다.
reduce(function, iterable)
: 누적적으로 함수를 적용해 하나의 값으로 줄입니다.
lru_cache(maxsize=128, typed=False)
: 함수의 결과를 캐시하여 이후 호출 시 빠르게 결과를 반환할 수 있게 합니다.
반복 가능한 데이터 스트림을 처리하는데 유용한 여러 함수를 제공합니다.
count(start=0, step=1)
시작 숫자부터 지정된 간격으로 무한히 증가하는 이터레이터를 생성합니다.
combinations(iterable, r)
입력 iterable에서 요소의 r 길이 조합을 생성합니다.
정규 표현식을 지원합니다.
search(pattern, string)
문자열에서 패턴과 매치하는 첫 번째 위치를 찾습니다.
match(pattern, string)
문자열의 시작이 패턴과 매치하는지 확인합니다.
파이썬 인터프리터와 관련된 함수와 변수를 제공합니다.
sys.stdin.readline()
: 빠르게 입력을 받을 수 있는 함수이다.
argv
: 명령줄 인자를 포함하는 리스트입니다.
exit()
: 인터프리터를 종료합니다.
수학적 함수와 상수를 제공합니다.
sqrt(x)
x의 제곱근을 반환합니다.
factorial(x)
x의 팩토리얼을 반환합니다.
정렬된 배열에 대해 이진 검색과 삽입을 수행합니다.
bisect_left(a, x)
x를 a에 삽입할 가장 왼쪽 인덱스를 반환합니다.
bisect_right(a, x)
x를 a에 삽입할 가장 오른쪽 인덱스를 반환합니다.
타입 힌트를 지원하여 코드의 가독성과 유지보수성을 향상시킵니다.
List[T]
요소 타입이 T인 리스트를 나타냅니다.
Dict[K, V]
키 타입이 K이고 값 타입이 V인 딕셔너리를 나타냅니다.
화이팅 아자아자