C语言的插入排序
来源:互联网 发布:mysql 重命名数据库 编辑:程序博客网 时间:2024/06/06 07:43
#include<stdio.h>
#include<stdlib.h>
#define N 8
void insert_sort(int a[],int n);
//插入排序实现,这里按从小到大排序
void insert_sort(int a[],int n)//n为数组a的元素个数
{
//进行N-1轮插入过程
for(int i=1; i<n; i++)
{
//首先找到元素a[i]需要插入的位置
int j=0;
while( (a[j]<a[i]) && (j<i))
{
j++;
}
//将元素插入到正确的位置
if(i != j) //如果i==j,说明a[i]刚好在正确的位置
{
int temp = a[i];
for(int k = i; k > j; k--)
{
a[k] = a[k-1];
}
a[j] = temp;
}
}
}
int main()
{
int num[N] = {89, 38, 11, 78, 96, 44, 19, 25};
insert_sort(num, N);
for(int i=0; i<N; i++)
printf("%d ", num[i]);
printf("\n");
system("pause");
return 0;
}
#include<stdlib.h>
#define N 8
void insert_sort(int a[],int n);
//插入排序实现,这里按从小到大排序
void insert_sort(int a[],int n)//n为数组a的元素个数
{
//进行N-1轮插入过程
for(int i=1; i<n; i++)
{
//首先找到元素a[i]需要插入的位置
int j=0;
while( (a[j]<a[i]) && (j<i))
{
j++;
}
//将元素插入到正确的位置
if(i != j) //如果i==j,说明a[i]刚好在正确的位置
{
int temp = a[i];
for(int k = i; k > j; k--)
{
a[k] = a[k-1];
}
a[j] = temp;
}
}
}
int main()
{
int num[N] = {89, 38, 11, 78, 96, 44, 19, 25};
insert_sort(num, N);
for(int i=0; i<N; i++)
printf("%d ", num[i]);
printf("\n");
system("pause");
return 0;
}
阅读全文
0 0
- C语言的插入排序
- 插入排序C语言
- c语言插入排序
- C语言 --- 插入排序
- C语言插入排序
- C语言插入排序
- C语言插入排序
- C语言插入排序
- C语言 插入排序
- 插入排序-C语言
- C语言插入排序
- 插入排序算法的C语言实现
- C语言实现的插入排序
- 插入排序的C语言实现
- C语言中链表的插入及排序
- 直接插入排序的c语言实现
- (排序)用C语言实现的直接插入排序
- 【c语言】冒泡排序与插入排序的实现
- 概率算法
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
- Web前端知识体系精简(转载)
- 笑着理解设计模式-java--单例模式
- git重置
- C语言的插入排序
- POJ 2137 Cowties 笔记
- OrmLite框架操作数据库
- Linux日常——NAT技术与代理服务员器调研
- java反射机制(转载)
- Android最值得使用的插件之一————360 FireLine Plugin、LeakCanary
- iOS程序安装到设备上的二进制文件会有变化
- 寓教于乐——神经网络基础BugBrain
- 解决编译时出现的警告:format string is not a string literal (potentially insecure)