插入排序
来源:互联网 发布:8051单片机工作原理 编辑:程序博客网 时间:2024/05/18 01:51
思想:将要插入的第i个作为关键字target,然后与i之前的比较,如果之前这个有序序列中从后往前比较,有比target大的,就后移,直到找到第一个不大于target的位置插入即可,循环直到结束!
#include<stdio.h>void InserSort(int arr[],int n){int i,j;int target;for(i=1;i<n;i++){target=arr[i];//关键字赋值j=i;while(j>0&&target<arr[j-1]){arr[j]=arr[j-1];//大于target的后移j--;}arr[j]=target;直到找到不大于target的位置插入}}int main(){int arr[]={2,5,1,6,8,4,9,3,7};int count = sizeof(arr)/sizeof(int);int k;InserSort(arr,count);for(k=0;k<count;k++){printf("%d",arr[k] );}return 0;}
运行结果:
- 插入排序-【插入排序】
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 谷歌插件与桌面通讯
- MYSQL分页储存过程(取得数据集合和查询AllRows)
- PHP魔术常量
- Media-媒介(媒体、介质)【译】
- UIImage方法(imageWithCGImage: scale: orientation:)
- 插入排序
- Android_ViewPager_用户向导
- 解决myeclipse安装SVN插件不起作用
- SQL Server 2005 附加 数据库为 只读 的解决方法(转)
- sql server 性能分析工具
- ArrayList Vector LinkedList区别与用法
- 不错的东西: AutoMapper
- MYSQL的C 语言接口
- 开发笔记——websocket