1. 程式人生 > >王道論壇|第二章——快速排序sort

王道論壇|第二章——快速排序sort

題目描述

利用快速排序演算法將讀入的N個數從小到大排序後輸出。

快速排序是資訊學競賽的必備演算法之一。對於快速排序不是很瞭解的同學可以自行上網查詢相關資料,掌握後獨立完成。

輸入輸出樣例

輸入入樣例#1:複製
5
4 2 4 5 1
輸出樣例#1:複製
1 2 4 4 5

輸入輸出格式

輸入格式:

輸入檔案sort.in的第1行為一個正整數N,第2行包含N個空格隔開的正整數a[i],為你需要進行排序的數,資料保證了A[i]不超過1000000000。

輸出格式:

輸出檔案sort.out將給定的N個數從小到大輸出,數之間空格隔開,行末換行且無空格。

為了練習sort函式的使用,原始碼為從大到小輸出

#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(int x,int y)//sort函式預設從小到大,引入cmp函式實現從大到小 
{
	return x>y;
}
int main() 
{
	int n;
	int a[100003];
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	sort(a,a+n,cmp);//引入cmp函式,從a[0]到a[n-1] 
	for(int i=0;i<n-1;i++)
	{
		cout<<a[i]<<' ';
	}
	cout<<a[n-1]<<endl;
	return 0;
}