void
quick_sort
(int q,
int l,
int r)
while
(i}quick_sort
(q,l,j)
;//剩下左邊再排一次
quick_sort
(q,j+
1,r)
;//右邊再拍排一次
}
給定你乙個長度為n的整數數列。
請你使用快速排序對這個數列按照從小到大進行排序。
並將排好序的數列按順序輸出。
輸入格式
輸入共兩行,第一行包含整數 n。
第二行包含 n 個整數(所有整數均在1~109範圍內),表示整個數列。
輸出格式
輸出共一行,包含 n 個整數,表示排好序的數列。
資料範圍
1≤n≤100000
輸入樣例:
53 1 2 4 5
輸出樣例:
1 2 3 4 5
#include
#include
using namespace std;
const
int n=
1e6+10;
int n;
int q[n]
;void
quick_sort
(int q,
int l,
int r)
while
(i}quick_sort
(q,l,j)
;//剩下左邊再排一次
quick_sort
(q,j+
1,r)
;//右邊再拍排一次
}int
main()
quick_sort
(q,0
,n-1);
for(
int i=
0;i)return0;
}
排序 C 快速排序模板
無注釋的 include using namespace std const int n 100005 int a n void quicksort int q,int l,int r int index q l r 1 int i l 1,j r 1 while i j while q i ind...
c 快速排序模板類
一 目標 在實際問題的解決過程中,我們發現,很多問題都可以歸結為對資料的排序和查詢。而查詢的效率則在很大程度上依賴於排序的效率 尤其是在資料量達到海量級的時候。因此,設計乙個有效的排序演算法是至關重要的。本文設計了乙個通用的c quicksort 模板類。通過簡單的提供乙個data類,可以實現任意資...
快速排序模板 C語言
快速排序基本思想 快速排序使用分治的思想。選取乙個分界點,通過一趟排序將待排序序列分割成兩部分,一部分比分界點值小,一部分比分界點值大。進而遞迴排序這兩部分,最後使得整個序列有序。快速排序步驟 確定分界點。分界點的選取可以是array left array right array left righ...