시간복잡도, 시간제한, 빅오(Big-O) 표기법
·
Coding Test
1초 제한 n으로 구성된 O( )를 계산했을 때의 값이 1억 정도면 1초 정도의 시간이 걸린다고 한다. 예를 들어 N의 최대값이 10만이라고 문제에서 주어진다면 1. O(N) 의 시간복잡도일 경우에 값이 10만 정도이니, 1/1000초 정도가 걸릴 것이라고 예상할 수 있다. 2. O(N^2)의 시간복잡도의 경우에 값은 100억이므로, 100초 정도가 걸릴 것이라고 예상할 수 있다. 보통 1초가 걸릴 때 입력의 최대 크기를 살펴보면 O(N): 약 1억 O(N^2) : 약 1만 O(N^3) : 약 500 O(2^N) : 약 20 O(N!): 10 N의 크기에 따른 허용 시간 복잡도 N의 크기 시간복잡도 N ≤ 11 O(N!) N ≤ 25 O(2N) N ≤ 100 O(N4) N ≤ 500 O(N3) N ≤ 3..
정렬된 두 리스트 합치기 (sort 함수, 투 포인터)
·
Coding Test/Implement
문제 오름차순으로 정렬이 된 두 리스트가 주어지면 두 리스트를 오름차순으로 합쳐 출력 3 1 3 5 5 2 3 6 7 9 1 2 3 3 5 6 7 9 분석 sort()의 시간복잡도 : nlogn ➔ 정렬된 두 리스트 합치기 시간복잡도 : n 풀이 # 시간복잡도 n n=int(input()) a=list(map(int,input().split())) m=int(input()) b=list(map(int,input().split())) c=[] # 정답 리스트 p1=p2=0 while p1