一个直接插入排序算法程序
来源:互联网 发布:oracle dblink mysql 编辑:程序博客网 时间:2024/06/08 11:16
直接插入排序,算法简单,程序易编制,但随着数组长度的增加,搜索时间会增加,移动的元素会增多.因此这种算法适合排序数组长度较短的情况.
初始:23,45,1,0,-45,13,1,34
1: [23],45,1,0,-45,13,1,34
2: [23,45],1,0,-45,13,1,34
3: [1,23,45],0,-45,13,1,34
4: [0,1,23,45],-45,13,1,34
5: [-45,0,1,23,45],13,1,34
6: [-45,0,1,13,23,45],1,34
7: [-45,0,1,1,13,23,45],34
结束:[-45,0,1,1,13,23,34,45]
#include<stdio.h>/*直接插入排序:待插入目标数组指针,目标数组长度,待插入值*/void sort(int *buf,int length,int insert){ int i=0; int j=length; /*搜索目标数组,在合适元素处停下*/ for (;i<length;i++){ if (*(buf+i)>insert) break; } /*将该元素以后的元素向后移动一个单位*/ while (j>i){ *(buf+j)=*(buf+j-1); j--; } /*将待插值插入该元素位置处*/ *(buf+i)=insert;}int main(void){ int buf[]={23,45,1,0,-45,13,1,34}; int i=1; for (;i<sizeof(buf)/sizeof(int);i++){ sort(buf,i,buf[i]); } for (i=0;i<sizeof(buf)/sizeof(int);i++) printf("%d,",buf[i]);}
0 0
- 一个直接插入排序算法程序
- 直接插入排序算法
- 直接插入算法排序
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- 直接插入排序算法
- Linux(Ubuntu)下如何安装JDK
- Error Code: 1235. This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
- 获取系统当前时间
- 华为code中的字符串通配符匹配
- Ubuntu Apache部署多个web工程
- 一个直接插入排序算法程序
- Android fill_parent、wrap_content和match_parent的区别
- Dubbox之编译
- Hbase 0.98.3 & 1.1.3 balance理解
- DrawerLayout实现侧滑
- 添加dubbo xsd的支持
- Linux压缩、解压缩、查看服务等命令
- jQuery中读取json文件
- 【Linux】makefile文件编写