插入排序的一种实现方法,欢迎批评指正!
来源:互联网 发布:ie11不支持js 编辑:程序博客网 时间:2024/05/21 17:07
插入排序和冒泡排序类似,也最简单的排序算法之一,时间复杂度为o(n^2),适用于元素个数较少的数组的排序。如下排序算法没有考虑有相等元素的情况。
#include "stdio.h"
void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
void insert_sort(int a[], int N)
{
int P = 0, i = 0, temp = 0,j =0;
for(P = 1; P < N; P++)
{
temp = a[P];
for(j = P; j > 0; j--)//j can not equal 0 to prevent from j-1 <0
{
if(a[j-1] > temp)
{
swap(&a[j-1],&a[j]);
}
}
}
}
void main ()
{
int a[] = {8,2,9,1,3};
insert_sort(a,5);
printf("the sorted array is:%d,%d,%d,%d,%d",*a,*(a+1),*(a+2),*(a+3),*(a+4));
}
0 0
- 插入排序的一种实现方法,欢迎批评指正!
- 欢迎批评指正我的博客
- 自己写的一个基于数组实现的栈,欢迎大家批评指正,共同进步
- CuteIE已重构为PIMShell,欢迎批评指正
- 开始写博客,欢迎大家批评指正
- 模拟实现VC中的handle的c++方法,欢迎指正~~~
- reportviewer动态加载报表的实现以及动态控制报表,套打,存折打印模式等的一些探讨,欢迎批评指正!
- 关于微软的OBA架构理解(欢迎大家批评指正^_^)
- 计算机中浮点数的存储方式-自己整理,欢迎大家批评指正
- 如何求一帧二值图像上最左最右最上最下的坐标点,欢迎各位批评指正
- 插入排序的一种递归法实现
- 内部UML培训文件,欢迎大家批评指正
- 小米公司编程题1(欢迎批评指正)
- 小米公司编程题2(欢迎批评指正)
- Java日期,日期格式,历法的小总结(菜鸟的我学习Java,欢迎批评指正哦)
- 剑指Offer22题栈的压入、弹出序列 java解答(如有错误欢迎批评指正)
- 递归排序的一种实现方法。
- 中文通讯录排序的一种实现方法
- 安卓-绑定服务与解绑服务
- 棋牌游戏API接口——大雄游戏
- 关于Handler导包问题
- 存储类型与标识符的生命期
- 最简单实现跨域的方法:使用nginx反向代理
- 插入排序的一种实现方法,欢迎批评指正!
- AngularJs ng-bind-html指令整理
- photoshop第六章:图片效果的制作
- ReadingButton,ImageButton,Button去掉默认的点击效果
- LeetCode | HouseRobber 算法题
- 欢迎使用CSDN-markdown编辑器
- 2009-2015年阅读书籍
- PCB
- 第一章 XML技术