問題 C 快速排序 qsort 2

2021-10-06 14:41:35 字數 818 閱讀 7351

題目描述

輸入n個整數,用快速排序的方法進行排序

input

第一行數字n 代表接下來有n個整數

接下來n行,每行乙個整數

output

output

公升序輸出排序結果

每行乙個資料

sample input512

1814

1316

sample output

1213

1416

18hint

n<=5000

每個資料<=5000

#include

int n;

intpartition

(int a,

int left,

int right)

//對區間排序

a[left]

=temp;

//把temp放到left與right相遇的地方

return left;

//返回相遇的下標

}void

quicksort

(int a,

int left,

int right)

}int

showarray

(int a)

//輸出

}int

main()

quicksort

(num,

0,n-1)

;showarray

(num)

;return0;

}

問題 C 快速排序 qsort 2

輸入n個整數,用快速排序的方法進行排序 input 第一行數字n 代表接下來有n個整數 接下來n行,每行乙個整數 output output 公升序輸出排序結果 每行乙個資料 sample input 5 1218 1413 16sample output 12 1314 1618hint n 50...

問題 D 二分遞迴快排(Qsort) 2

二分遞迴快排 qsort 用二分遞迴的方法實現快排 輸入 第一行乙個資料n,表示有n個數要排序。接下來n行每行乙個 10 7的整數。輸出 n行,由小到大排序後的資料 資料規模 n 10 5 思考 兩個遞迴都會被執行嗎?有幾種可能?includeusing namespace std int part...

問題 D 二分遞迴快排(Qsort) 2

題目鏈結 題目描述 二分遞迴快排 qsort 用二分遞迴的方法實現快排 輸入 第一行乙個資料n,表示有n個數要排序。接下來n行每行乙個 10 7的整數。輸出 n行,由小到大排序後的資料 include const int maxn 5010 int a maxn int partition int ...