快速排序法

2021-09-10 04:33:10 字數 554 閱讀 2998

/*快速排序 

*/#include

int a[10],n;//全域性變數,方便在函式中使用,已預設初始化 

void quicksort(int left,int right)

temp = a[left];//作為基準數,也就是數列中選取某個數作為比較的物件 

i = left;//左邊 

j = right;//右邊 

while(i!=j)//為相遇 

while(a[i]<=temp&&iif(i} //將基準數歸位 

a[left] = a[i];

a[i] = temp;

quicksort(left,i-1);//重新定義基準數,再次比較 

quicksort(i+1,right); // 重新定義基準數,再次比較 

return ;

}int main()

quicksort(0,n-1);

printf("排序結果為:\n");

for(i = 0;i < n;i++)

return 0;

快速排序法

一 快速排序演算法的基本特性 時間複雜度 o n lgn 最壞 o n 2 空間複雜度 o n lgn 不穩定。快速排序是一種排序演算法,對包含n個數的輸入陣列,平均時間為o nlgn 最壞情況是o n 2 通常是用於排序的最佳選擇。因為,基於比較的排序,最快也只能達到o nlgn c void q...

快速排序法

include stdafx.h include vos.h define table mid machine name midmachine define table midmach colname id id define table midmach colname ip ip define t...

快速排序法

快速排序法思想 在待排序的n個資料中取第乙個數字為基準數,陣列最前面放乙個標桿,陣列最後麵放乙個標桿,通過基準數和標桿 i,j 出的數進行比較,實現每次排序完時候,共三組數,不大於基準數 基準數 不小於基準數 舉例說明 5 i 4,6,8,3,9,2 j 基準數5 標桿 i 指向5位置,標桿 j 指...