1. 快速排序
1. 是(shi)一個(ge)優(you)秀的排序算法,O(n²)和Ω(nlgn),期望(wang)運行時間:θ(nlgn)且常數因(yin)子較小。
2. 快速排序采用了分治的(de)思想
- 分:將(jiang)數(shu)組劃分成(cheng)兩個部(bu)分(核心(xin),partition) - 治:遞歸的(de)對劃分的(de)兩個子數(shu)組進行排(pai)序
2. 歸并排序
1. 歸并排序(xu)(英語:Merge sort,或mergesort),是創建在歸并操作上的(de)一(yi)種有效(xiao)的(de)排序(xu)算法,效(xiao)率為(wei)O(n log n)。1945年由(you)約翰·馮(feng)·諾伊曼首(shou)次(ci)提出。該算法是采用分治(zhi)法(Divide and Conquer)的(de)一(yi)個非常典型的(de)應用,且各層(ceng)分治(zhi)遞歸可以同時進行。
2. 讓(rang)左右兩部(bu)分的元素先有序(xu),然后(hou)把兩個有序(xu)的部(bu)分合(he)并為一個有序(xu)的過(guo)程。那么如(ru)何讓(rang)左邊的部(bu)分和右邊的部(bu)分有序(xu)呢?
繼續(xu)把左邊的(de)部(bu)分分為兩(liang)部(bu)分,然后排序。
然后再把右邊(bian)的(de)部(bu)分分為(wei)兩(liang)部(bu)分,再排序。這是一個遞歸的(de)過程(cheng)