92.插入排序
一.什么是插入排序
把数据分为有序和无序俩个部分,将无序部分中的一个数据插入到已排好的有序部分中,有序部分从而变成一个新的、排好数据数量增1的有序数据,直到数据全部排序完成。
插入排序一般适用于小型数据。大型数据性能较差。
二.实现思路
从第二个元素开始,逐一遍历无序部分数据。把无序部分元素与有序元素逐一比较,找到插入位置。
找到插入位置后插入当前元素至正确位置,前序元素后移。重复上述步骤,直至数组全排序。
动画演示:
三.实验代码
#include <stdio.h>
void main(void)
{
int data[10];
int j,i,k;
int temp;
printf("Please input data:\n");
for(i=0;i<10;i++){
scanf("%d",&data[i]);
}
for(i=1;i<10;i++){
k = data[i];
j = i-1;
while ((j>=0)&(data[j]>k))
{
data[j+1] = data[j];
j--;
}
data[j+1] = k;
}
printf("**************************\n");
for(i=0;i<10;i++){
printf("%d\n",data[i]);
}
}
四.视频教程
原文地址:https://blog.csdn.net/2301_78343139/article/details/144251119
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!