C语言实现插入排序

简介: C语言实现插入排序

插入排序的理解

给一堆无序数(n个数据)进行插入排序步骤:

第1个元素进行排序,插入第2个元素;

前2个进行排序,插入第3个元素;

前3个元素进行排序,插入第3个元素;

……

前n个数据进行排序,完成排序

注意:插入元素到有序的序列中比较排序哦

OK,很简单!

接下来写一个数组的插入排序

void insertsort(int R[],int n)
{
  int i,j,temp;
  for(i=1;i<n;++i)
  {
    temp=R[i];
    j=i-1;
    while(j>=0&&temp<R[j])
    {
      R[j+1]=R[j];//不断更新该数组出前j个最小的数
      --j;
    }
    R[j+1]=temp;//找到插入位置,将最小的数放在最前面
  }
}

下面是主函数

int main()
{
  
  printf("插入排序算法\n输入8个数据进行排序:\n");
  int R[8];
  for(int i=0;i<=7;i++)
  {
    scanf("%d",&R[i]);
  }
  insertsort(R,8);
  printf("\n小大排序之后的顺序:");
  for(i=0;i<=7;i++)
  {
    printf("%d  ",R[i]);
  }
  printf("\n");
  return 1;
}

运行结果

ok没问题!

目录
相关文章
|
6天前
|
C语言
对链表使用插入排序的C语言实现示例
对链表使用插入排序的C语言实现示例
|
6天前
|
搜索推荐 算法 C语言
插入排序C语言,小白必看的教科书般详解
插入排序C语言,小白必看的教科书般详解
|
8月前
|
搜索推荐 算法 C语言
【数据结构】—从直接插入排序升级到希尔排序究极详解(含C语言实现)
【数据结构】—从直接插入排序升级到希尔排序究极详解(含C语言实现)
|
9月前
|
算法 C语言
插入排序-C语言实现
插入排序-C语言实现
97 0
|
10月前
|
算法 C语言
直接插入排序--C语言(附详细代码)(附图详解)
直接插入排序--C语言(附详细代码)(附图详解)
417 0
|
10月前
|
存储 搜索推荐 测试技术
数据结构__<八大排序> __插入排序 |希尔排序 |选择排序 |堆排序 |快速排序 |归并排序(C语言实现)
数据结构__<八大排序> __插入排序 |希尔排序 |选择排序 |堆排序 |快速排序 |归并排序(C语言实现)
238 0
|
11月前
|
存储 算法 搜索推荐
用C语言进行学生成绩排序(插入排序)
本文主要是用C语言进行学生成绩按分数排序(插入排序)
216 1
用C语言进行学生成绩排序(插入排序)
|
11月前
|
算法 C语言
C语言---插入排序(直接插入和希尔)
C语言---插入排序(直接插入和希尔)
105 0
C语言经典实例:21-30例:插入排序、希尔排序1、快速排序、希尔排序2、递归法、完数、斐波那契数列、公约数和公倍数、判断水仙花数统计单词个数
C语言经典实例:21-30例:插入排序、希尔排序1、快速排序、希尔排序2、递归法、完数、斐波那契数列、公约数和公倍数、判断水仙花数统计单词个数
C语言经典实例:21-30例:插入排序、希尔排序1、快速排序、希尔排序2、递归法、完数、斐波那契数列、公约数和公倍数、判断水仙花数统计单词个数
|
存储 算法 搜索推荐
【C语言程序设计】知识点汇总7——排序与查找原理与代码(冒泡排序,选择排序,插入排序,二分查找)
【C语言程序设计】知识点汇总7——排序与查找原理与代码(冒泡排序,选择排序,插入排序,二分查找)
141 0