加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

数据结构实验之排序一:一趟快排

发布时间:2020-12-15 04:50:58 所属栏目:百科 来源:网络整理
导读:H 数据结构实验之排序一:一趟快排 Problem Description 给定N个长整型范围内的整数,要求输出以给定数据中第一个数为枢轴进行一趟快速排序之后的结果。 Input 连续输入多组数据,每组输入数据第一行给出正整数N(N Output 输出一趟快速排序后的结果,数字间

H

数据结构实验之排序一:一趟快排

Problem Description

给定N个长整型范围内的整数,要求输出以给定数据中第一个数为枢轴进行一趟快速排序之后的结果。

Input

连续输入多组数据,每组输入数据第一行给出正整数N(N < = 10^5),随后给出N个长整型范围内的整数,数字间以空格分隔。

Output

输出一趟快速排序后的结果,数字间以一个空格间隔,行末不得有多余空格。

Sample Input

8

49 38 65 97 76 13 27 49

Sample Output

27 38 13 49 76 97 65 49

Hint

Source

xam

#include

02

void qsort(int a[],int l,int h)

03

{

04

int i = l,j = h,k = a[l];

05

if (i >= j)

06

return ;

07

while(i < j)

08

{

09

while(i < j && a[j] >= k)

10

j--;

11

a[i] = a[j];

12

while(i < j && a[i] <= k)

13

i++;

14

a[j] = a[i];

15

}

16

a[i] = k;

17

return ;

18

}

19

int main()

20

{

21

int a[10010];

22

int n,i ;

23

while(~scanf("%d",&n))

24

{

25

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

26

{

27

scanf("%d",&a[i]);

28

}

29

qsort(a,n-1);

30

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

31

printf("%d%c",a[i],i == n-1 ?'n':' ');

32

}

33

return 0;

34

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读