快速排序:

#include <stdio.h>void QuickSort(int arr[],int low,int high);int main(int argc, char *argv[])
{int i,arr[10]={5,8,4,3,7,0,9,1,2,6};for(i=0;i<10;i++)printf("%d ",arr[i]);QuickSort(arr,0,9);printf("\n");for(i=0;i<10;i++)printf("%d ",arr[i]);return 0;
}
void QuickSort(int arr[],int low,int high)
{int i=1,j=1,key=1;if(low < high){key = arr[low];i=low;j=high;while(i < j){while(i<j && arr[j]>key)j--;if(i<j)arr[i++] = arr[j];while(i < j && arr[i]<key)i++;if(i < j)arr[j--] = arr[i];}arr[i] = key;//此时i==jQuickSort(arr,low,i-1);QuickSort(arr,i+1,high);}
}

直接插入排序:

#include <stdio.h>void InsertSort(int arr[],int i,int j);
int main(int argc, char *argv[])
{int i,arr[10]={4,5,8,9,6,0,1,7,3,2};for(i=0;i<sizeof(arr)/sizeof(int);i++)printf("%d ",arr[i]);InsertSort(arr,2,7);printf("\n");for(i=0;i<sizeof(arr)/sizeof(int);i++)printf("%d ",arr[i]);return 0;
}
void InsertSort(int arr[],int i,int j)//待排序的数组名arr待排的下界i和上届j。
{int k,temp,b=i;//k用来做扦插过程中的循环变量从而保护变量i,b用来存储待排序的下界。for(i=i+1;i<=j;i++){k=i;while(k>b && arr[k]<arr[k-1]){temp=arr[k];arr[k] = arr[k-1];arr[k-1]=temp;    k--;}}
}

一个快速排序 和 直接插入排序 的简单 c程序相关推荐

  1. 一个 冒泡排序 和 选择排序 的简单c程序

    冒泡排序 #include <stdio.h>void BubbleSort(int arr[],int i,int j) {int a,b,temp;for(b=i;b<=j;j- ...

  2. 对以下6种常用的内部排序算法进行比较:起泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、堆排序。

    题目要求: (1)对以下6种常用的内部排序算法进行比较:起泡排序.直接插入排序.简单选择排序.快速排序.希尔排序.堆排序. (2)待排序表的表长不小于100:其中的数据要用伪随机数产生程序产生:至少要 ...

  3. 一个快速排序写了快 10000 字?

    [CSDN 编者按]之前一起看了归并排序和一些利用归并排序可以解决的经典题目,今天我们再来说一下另一个高频考点,快速排序. 作者 | 袁厨的算法小屋       责编 | 张红月 你或许已经掌握了快速 ...

  4. 用C语言编写一个Linux下的简单shell程序

    这是一个简单的C程序,展示了如何进行系统调用执行logout cd ls pwd pid rm mkdir mv cp等命令,这是一个简单的命令解释程序shell,其源代码如下: #include & ...

  5. boost::graph模块实现一个只读隐式加权图的简单示例的测试程序

    boost::graph模块实现一个只读隐式加权图的简单示例的测试程序 实现功能 C++实现代码 实现功能 boost::graph模块实现一个只读隐式加权图的简单示例的测试程序 C++实现代码 #i ...

  6. SilkierQuartz 1.0.21 发布, 是一个 Quartz.NET 的强大且简单的Web管理工具和承载组件...

    SilkierQuartz 是一个新的合并了 Quartzmin 和 QuartzHostedService的组件! Quartz.NET 是一个完整的开源的任务规划系统,从小应用至大型企业级应用都可 ...

  7. 通过一个例子介绍 IDA pro 的简单使用

    From:通过一个例子介绍IDA pro的简单使用 - 知乎 IDA pro 7.6 绿色便携版:http://www.ddooo.com/softdown/215615.htm 配置IDA使用Ana ...

  8. python的简单程序代码_小白学编程?从一个简单的程序开始学习Python编程

    笔者思虑再三还是决定选择图文(因为百家的视频发布画质真不怎么样[囧]). 笔者学习编程的时间也挺长的,因为业余,因为时间不多,各种原因,自学编程的路特别难走.然后笔者发现,自己能为小白贡献一些力量,然 ...

  9. js 两个map合并为一个map_ArcGIS API for JS3.x教程二:构建第一个简单的程序

    本文衔接上文: 不睡觉的怪叔叔:ArcGIS API for JS3.x教程一:本地开发环境配置​zhuanlan.zhihu.com 一.创建简单的HTML文档 创建一个简单的HTML文档: < ...

最新文章

  1. 【有美女看】提升用户体验,你不得不知道的事儿——巧用全屏与沉浸式体验,让用户更舒心~...
  2. JZOJ 5371. 【NOIP2017提高A组模拟9.17】组合数问题
  3. hdu 3501 欧拉函数
  4. 安卓开源项目周报0104
  5. python剪切文件如何恢复_用python实现的可以拷贝或剪切一个文件列表中的所有文件...
  6. Java笔记-JDBC心跳检测及断开重连线程实例
  7. [undo]ip address ppp-negotiate
  8. 安装官方 Synaptics 驱动,终于解决 HP Pavilion G4 笔记本 讨厌的触摸板锁定问题!...
  9. linux 初始化全部操作
  10. 选择排序java实现
  11. qt 使用msvc编译器出现中文乱码的问题
  12. Qt之QTcpSocket 跨线程连续发送大数据
  13. Java多线程---Phaser
  14. 计算机一黑屏就显示当前账户已锁定,电脑黑屏用户已锁定账户怎么办?
  15. 2019年Q1美国手游市场总收入24.3亿美元,中国手游贡献2.8亿美元
  16. 需求分析的基础知识点(自己的理解)
  17. html旋转线条,html5 – 为什么我在移动浏览器上看到旋转的条纹?
  18. STM32CubeMX生成工程失败
  19. 掘金mysql_我的 mysql 半年小得 | 掘金征文
  20. linux 查看系统日志

热门文章

  1. Android学习之android源码的导入
  2. JavaScript(五)——错误处理
  3. Java synchronized到底锁住的是什么?
  4. elasticsearch5.0.0中索引和文档接口的变化
  5. E-MapReduce解决hive comment中文乱码问题
  6. mysql5.5和5.6版本间的坑
  7. 使用.NET进行高效率互联网敏捷开发的思考和探索【一、概述】
  8. chrome插件:提取页面数据
  9. 使用 PSD Validator 在线校验 PSD 文件的质量
  10. liferay search container的两种实现方式