wikioi 1076 排序 【这里含冒泡、选择、插入以及快排库函数的调用】

简介: /*=================================================================== 1076 排序 题目描述 Description 给出n和n个整数,希望你从小到大给他们排序 输入描述 Input Description...
/*===================================================================
1076 排序 
题目描述 Description
    给出n和n个整数,希望你从小到大给他们排序
输入描述 Input Description
    第一行一个正整数n
    第二行n个用空格隔开的整数
输出描述 Output Description
    输出仅一行,从小到大输出n个用空格隔开的整数
样例输入 Sample Input
    3
    3 1 2
样例输出 Sample Output
    1 2 3
数据范围及提示 Data Size & Hint
    1<=n<=100000

解析:不说了,直接看代码吧。 =====================================================================
*/ #include<stdio.h> #include<stdlib.h> int mycmp(const void *a, const void *b); int main() { int n,a[100000],i,j,flag,t,k; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); //下面是冒泡算法排序 ,结果超时 /*for(i=1;i<n;i++) { flag=1; for(j=0;j<n-i;j++) { if(a[j]>a[j+1]) { flag=0; t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } if(flag) break; //if(flag==1) break; }*/ //下面是选择排序算法,结果超时 /*for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) //寻找a[i+1]~a[n-1]当中最小的元素并把它的下标记录到k里面。 if(a[j]<a[k]) k=j; if(i!=k) { t=a[k]; a[k]=a[i]; a[i]=t; } } */ //下面是插入排序算法,结果超时 /*for(i=1;i<n;i++) { t=a[i]; for(j=i-1;j>=0&&(t<a[j]);j--) a[j+1]=a[j]; a[j+1]=t; } */ //下面调用快排库函数,结果AC qsort(a,n,sizeof(a[0]),mycmp); for(i=0;i<n;i++) printf("%d ",a[i]); printf("\n"); return 0; } int mycmp(const void *a, const void *b) { return *((int*)a)-*((int *)b); }

 

相关文章
|
26天前
|
搜索推荐 算法
三大排序:冒泡、选择、插入
三大排序:冒泡、选择、插入
20 2
|
3月前
|
存储 搜索推荐 算法
排序 | 冒泡 插入 希尔 选择 堆 快排 归并 非递归 计数 基数 排序(一)
排序 | 冒泡 插入 希尔 选择 堆 快排 归并 非递归 计数 基数 排序(一)
|
3月前
|
存储 搜索推荐 算法
排序 | 冒泡 插入 希尔 选择 堆 快排 归并 非递归 计数 基数 排序(二)
排序 | 冒泡 插入 希尔 选择 堆 快排 归并 非递归 计数 基数 排序(二)
|
3月前
|
算法 Java C++
实现一个二分搜索算法,搜索指定元素在已排序数组中的位置。(递归或者非递归实现)
实现一个二分搜索算法,搜索指定元素在已排序数组中的位置。(递归或者非递归实现)
22 0
|
10月前
|
搜索推荐 算法
排序算法大总结(插入、希尔、选择、堆、冒泡、快速、归并、计数)(上)
排序算法大总结(插入、希尔、选择、堆、冒泡、快速、归并、计数)
60 0
|
10月前
|
搜索推荐 算法
排序算法大总结(插入、希尔、选择、堆、冒泡、快速、归并、计数)(下)
排序算法大总结(插入、希尔、选择、堆、冒泡、快速、归并、计数)
50 0
|
10月前
|
C++
【leetcode】【27、移除元素】双指针和STL库函数求解
【leetcode】【27、移除元素】双指针和STL库函数求解
|
算法 前端开发 索引
有序的数组,试试用指针法遍历
有序的数组,试试用指针法遍历
60 0
|
搜索推荐 C语言
关于查找(二分查找)和排序(冒泡和快速)
关于查找(二分查找)和排序(冒泡和快速)
84 0
关于查找(二分查找)和排序(冒泡和快速)
|
搜索推荐 算法 C++
C++实现排序 - 01 冒泡、选择、插入和希尔排序
从这一讲开始,我们整理一下常见的十大排序算法,可以按照它们的时间复杂度进行大致的分类。今天先来讲讲平均时间复杂度为 O(n^2^) 的四个排序算法。
106 0
C++实现排序 - 01 冒泡、选择、插入和希尔排序

热门文章

最新文章