C语言---快速排序
1.以下代码是在书上看到的,加上自己的理解。
#include<stdio.h>
int a[101];
void quictsort(int left,int right)
{
int i,j,t,temp;
if(left>=right)//极为重要,判断退出函数的主要条件 return;
i=left; j=right;
temp=a[left];//确定最左边一个数为标准数,
while(i!=j)//两个数不相等才能进行比较,若相等既说明已经两边数已经比完退出循环,将标准数归位
{
while(a[j]>=temp&&i<j) j--;
while(a[i]<=temp&&i<j) i++;
if(i<=j)
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
a[left]=a[i];//标准数归位
a[i]=temp;
quictsort(left,i-1);//对半分,将作半部分排序
quictsort(i+1,right);}int main(void)
{ int n,i;
scanf("%d",&n);for(i=1;i<=n;i++){
scanf("%d",&a[i]);
} quictsort(1,n); for(i=1;i<=n;i++){
printf("%d\t",a[i]);
}
}
快排多敲个几遍就可以理解了
C语言---快速排序相关推荐
- c语言快速排序代码不用函数,C语言 快速排序函数
C语言 快速排序函数用法 #include #include #include struct student { int id; char name[12]; char sex; }; int com ...
- C语言快速排序算法及三种优化方式
C语言快速排序算法及三种优化方式 C语言快速排序算法及三种优化方式 原理 快速排序复杂度分析 1 时间复杂度 2 空间复杂度 快速排序代码实现 1 普通快速排序 2 快速排序优化1-三数取中优化不必要 ...
- C语言快速排序--qsort函数
C语言快速排序–qsort函数 一.什么是qsort函数 qsort函数是C语言编译器函数库自带的快速排序函数. 其包含在#include<stdlib.h>头文件里面,所以在使用的时候需 ...
- C语言 快速排序函数
C语言 快速排序函数用法 #include <stdio.h> #include <stdlib.h> #include <string.h> struct stu ...
- c语言快速排序案例,什么是快速排序?C语言数组快速排序例子
快速排序(Quick Sort)是一种有效的排序算法.虽然算法在最坏的情况下运行时间为O(n^2),但由于平均运行时间为O(nlogn),并且在内存使用.程序实现复杂性上表现优秀,尤其是对快速排序算法 ...
- 二分查找算法举例说明C语言,C语言快速排序与二分查找算法示例
本文实例讲述了C语言二分排序与查找算法.分享给大家供大家参考,具体如下: 题目:首先产生随机数,再进行快速排序,再进行二分查找. 实现代码: #include #include #include vo ...
- c语言快速排序_Damp;C思想-快速排序算法
只能解决一种问题的算法,用处必然是有限的.所以今天介绍一种解决问题的思路,一个可以让我们使用的工具.Divide and Conquer 分而治之 先来说明一下D&C的工作原理: (1) 找出 ...
- c语言对随机数进行快速排序,C语言快速排序与二分查找算法示例
本文实例讲述了C语言二分排序与查找算法.分享给大家供大家参考,具体如下: 题目:首先产生随机数,再进行快速排序,再进行二分查找. 实现代码: #include #include #include vo ...
- C语言快速排序-qsort函数
目录 一.qsort简介 二.qsort详解 1)函数原型 2)快速排序源码 三.使用qsort进行排序 目录 一.qsort简介 二.qsort详解 1)函数原型 2)快速排序源码 三.使用qsor ...
- 怎么样才能做到对多种数据类型排序?C语言快速排序——qsort函数及其模拟实现
⭐️前面的话⭐️ 大家好!对于排序有许多中方法,比如冒泡排序,选择排序,希尔排序,插入排序,堆排序等等,但是怎样能够使用一个函数能够对多个数据类型进行排序呢?无所不知的C语言开发者提供了一个qsort ...
最新文章
- python元素定位的八种方法_selenium webdriver基于Python系列之八种元素定位方法
- LeetCode: 103. Binary Tree Zigzag Level Order Traversal
- vivo解bl锁_黔隆科技刷机教程酷派B770S忘记密码刷机解锁降级救砖解屏幕锁账户锁教程...
- python 内置递归
- web服务器 http请求返回 不同返回码的 对应 语意
- 支撑性服务 自动化能力
- 最强CNN语音识别算法开源了:词错率5%,训练超快,Facebook出品
- php 模拟登陆(不带验证码)采集数据
- 李刚的《疯狂Java讲义》
- android 随音乐跳动,随心音乐,让心跟着跳动起来
- IDEA中Javaweb项目图片加载不出来解决方案
- 1、RPC框架解析:开篇-什么是RPC?
- 功放IC音频芯片双声道D类3W ESOP-8封装
- Android Studio2.3正式版带SDK安装教程
- VirtuaNES 模拟器 玩FC小游戏 热血系列集合
- 听我瞎说--路指人仙
- 顾比倒数线——出入场管理的概述与解读
- Highcharts 3D圆环图
- 纳什博弈论的原理与应用
- 专访罗永浩:之后的对手就是苹果