퀵정렬
回答 1
0
정렬된 리스트를 가지고 시뮬레이션 해보면 쉽게 이해가 되실 겁니다.
S = [ 1, 2, 3, 4, 5]
위의 리스트를 파티션 하면, [1] 과 [2, 3, 4, 5]로 쪼개지지요?
S' = [ 2, 3, 4, 5] 도 마찬가지로
[2] , [3, 4, 5]로 쪼개집니다.
이런 식으로 재귀 호출의 깊이가 N이 되므로, Divide-and-Conquer의 장점이 사라지는 것이죠.
동일한 입력으로 Merge Sort를 하면 어떻게 될까요?
재귀 호출을 할 때 마다 N/2으로 쪼개어 지므로, 재귀 호출의 깊이가 logN이 됩니다.
문제 생각 몇분정도가 좋을까요
0
264
1
self
2
643
1
Two sum
2
340
1
Test_queue 출력 오류
1
552
2
int 범위
2
330
1
시간복잡도
1
1377
1
심화 과정 커리큘럼 질문
1
531
1
Algorithm 3.5 : Print Shortest Path 관련 질문 (플로이드 알고리즘)
0
277
0
코드 중간에 오류 보고 합니다!
1
241
1
쉽지 않네요 ㅠ
0
341
1
분기 한정법과 배낭 문제
0
394
1
배낭문제와 동적계획법
0
514
1
최적 이진검색트리 관계식
0
416
1
플로이드 알고리즘
0
429
2
n-Queens
0
226
1
큰정수의 계산법 강의에서 몫과 나머지
0
233
1
1.1알고리즘 이란 에서 교환정렬 파이썬으로 바꿀때
0
307
1
마지막 matrixmult 파라미터 값
0
265
2
내장함수에 언더스코프의 의미
0
652
2
def mergesort(S) 부분이 이해가 가지 않습니다.
0
284
3
이진탐색 vs 합병정렬
1
452
2
분할정복에서 큰 정수 곱셈 다른 계산법?
1
323
1
0번째 왜 자꾸 버리시는건가요?
2
344
1
리스트의 합
0
185
1

