一个快速排序 和 直接插入排序 的简单 c程序
来源:互联网 发布:数据库安全性猜密码 编辑:程序博客网 时间:2024/05/18 01:51
快速排序:
#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程序
- C语言程序----排序(直接插入排序,SHELL排序,冒泡排序,快速排序,简单选择排序,堆排序)
- 直接插入排序、快速排序和堆排序的C实现
- 一个 冒泡排序 和 选择排序 的简单c程序
- 随机生成30个数,试比较直接插入排序、简单选择排序、冒泡排序、快速排序、堆排序和希尔排序的时空性能和稳定性。
- 简单的直接插入排序
- 排序学习(直接插入排序,折半插入排序,冒泡排序,快速排序,简单选择排序)
- (数据结构排序的实验四)快速,冒泡,简单选择,直接插入排序的c语言实现!!
- 常用的排序算法:冒泡,简单选择,直接插入,快速排序,堆排序
- 直接插入排序 一个简单示例
- 一个直接插入排序算法程序
- C语言实现 排序源程序(包括直接插入、希尔、冒泡、快速、简单选择、堆排序)
- C语言实现 排序源程序(包括直接插入、希尔、冒泡、快速、简单选择、堆排序)
- C语言实现基本排序算法----排序(直接插入排序,SHELL排序,冒泡排序,快速排序,简单选择排序,堆排序)
- 简单排序:直接插入排序
- IOS- 快速排序,冒泡排序,直接插入排序和折半插入排序,希尔排序,堆排序,直接选择排序
- 直接插入排序,希尔排序,快速排序
- C直接插入排序
- 疑问
- IC/RFID/NFC 关系与区别
- sizeof(三)
- .conf
- 黑马程序员之C#学习笔记: XML和实体序列化和反序列化
- 一个快速排序 和 直接插入排序 的简单 c程序
- 复习ajax
- [10月19日的脚本] 在SharePoint中为一个 Web 应用程序添加允许内联下载的MIME类型
- 开除员工 六个理由随便挑一个就够了(本博主补充:看后心情老沉重)
- Hibernate 多对多双向关联
- 系统的恢复操作
- Ubuntu 添加虚拟磁盘
- Qt如何加载翻译文件?
- [10月22日的脚本] 将PPT演示稿转换为Word文档 (PowerShell)