QUICKSORT 算導學習

2021-06-04 00:16:25 字數 419 閱讀 7313

敲了很久- -,最後debug時發現是迴圈變數少計算了一位。結果就變得難看了。

快速排序的一般效能是o(nlogn),最差是o(n^2).避免最差情況是採用隨機化快排;「隨機化快排可以滿足乙個人一輩子的人品需求」。

這個mit關於本節的公開課,值得一看。

按照演算法寫了下c程式:

#includeusing namespace std;

void exchange(int *a,int *b)

int partition(int a,int p,int r)

int main()

{ int a[100];

int i,n,ff;

cin>>n;

for(i=0;i>a[i];

quicksort(a,0,n-1);

for(i=0;i

算導4(8皇后 回溯問題)

solve the 8 queenproblem using back trackingalgorithm.解題思路 這道題目可以使用回溯演算法。這種方法的思想是 為了求得問題的解,先選擇某一種可能情況向前探索,如果發現是錯誤的,則退回一步重新選擇,繼續向前探索,如此反覆進行,直至得到解或者證明無解...

算導2 4 逆序對問題

問題 假設a 1.n 是乙個有n個不同數的陣列。若i j 且a i a j 則對偶 i,j 成為a的乙個逆序對 inversion d.給出乙個確定在n個元素的任何排列中逆序對數量的演算法,最壞情況需要o nlgn 時間。思路 由歸併排序演算法的思想可以知道,兩個子串行l i 和r j 歸併前各自有...

快速排序(Quicksort)學習筆記

看完鄧俊輝的 資料結構 第三版 中快速排序後的學習總結 一.快速排序 quicksort 基於分治策略的又一經典演算法。類似於歸併排序 mergesort 將序列分為前後兩個子串行,並對這兩個規模更小的子串行進行遞迴。quicksort和mergesort都採用了分治策略。但quicksort要求前...