본문 바로가기

CODING TEST/ALGORITHM - 개념

(3)
[Python] 재귀 깊이 한도 - sys.setrecursionlimit / RecursionError: maximum recursion depth exceeded in comparison 해결 알고리즘 문제를 풀다보면 재귀함수를 사용하는 경우가 많다. 이 때, 아래와 같은 에러를 접할 수 있다. RecursionError: maximum recursion depth exceeded in comparison 대부분에 코딩테스 시스템에는 재귀 깊이 제한이 있어 런타임 에러가 뜨기 쉽다. 이는 최대 재귀 깊이를 늘려주면 쉽게 해결이 된다. import sys sys.setrecursionlimit(10**7)
파이썬의 정렬 라이브러리 : sorted, sort [Python] 정렬 알고리즘 정리 : 선택 / 삽입 / 퀵 / 계수 정렬 (tistory.com) [Python] 정렬 알고리즘 정리 : 선택 / 삽입 / 퀵 / 계수 정렬 1. 선택 정렬 : 가장 작은 데이터를 '선택'한 뒤 가장 앞으로 보내기 array = [7, 6, 3, 5] for i in range(len(array)): min_ind = i # 비교 대상의 값을 min_ind로 설정 for j in range(i+1, len(array)): if array[min_ind] > array[j] ss-doubt.tistory.com 기본적인 정렬 알고리즘의 원리는 위 포스팅에 정리했다. 그러나 코딩테스트에는 직접 구현이 아닌 라이브러리를 이용한 정렬을 사용하는 경우도 많다. - 표준 라이브러리..
[Python] 정렬 알고리즘 정리 : 선택 / 삽입 / 퀵 / 계수 정렬 1. 선택 정렬 : 가장 작은 데이터를 '선택'한 뒤 가장 앞으로 보내기 array = [7, 6, 3, 5] for i in range(len(array)): min_ind = i # 비교 대상의 값을 min_ind로 설정 for j in range(i+1, len(array)): if array[min_ind] > array[j] min_ind = j # 가장 작은 원소의 인덱스를 min_ind로 설정 array[i], array[min_ind] = array[min_ind], array[i] print(array) - 시간 복잡도 : O(N^2) 2. 삽입 정렬 : 두번째 원소부터 움직이면서 정렬 array = [7, 6, 3, 5] for i in range(1, len(array)): for j..