排序算法——直接插入排序

一、介绍

插入排序就是将前两个元素排好,再将第三个元素通过与前边的元素比较后插入适当的位置,再将第四个元素插入,不断重复插入与前边元素比较的操作,直到将元素都排列好。

演示如下:

视频演示:

直接插入排序演示_哔哩哔哩_bilibili直接插入排序演示 视频播放量 80、弹幕量 0、点赞数 3、投硬币枚数 0、收藏人数 0、转发人数 1, 视频作者 浅陌95sss, 作者简介 记录自己的学习成果,分享自己的快乐,相关视频:冒泡排序演示,希尔排序,选择排序演示,快速排序,学习记录--设计模式之命令模式,学习记录--网格系统,学习记录--BFS寻路算法,排行榜模拟,简单的同步Demo,xlua热更新框架https://www.bilibili.com/video/BV1hT4y1C7Ja/?spm_id_from=333.999.0.0运行代码:

cs 复制代码
 void InsertSort(int[] data)
 {
     int preIdx, current = 0;
     for (int i = 1; i < data.Length; i++)
     {
         //储存当前索引值的前边的索引值
         preIdx = i - 1;
         //储存当前要比较的数值
         current= data[i];

         //判断前边的数值是否比当前数值大,如果大说明当前值还需要往前移动,也就是preIdx对应的值
         //需要向后移动,否则在preIdx的后一个索引值preIdx+1处赋值(因为所有值在比较时都往后移动了)
         while (preIdx >= 0 && data[preIdx] > current)
         {
             data[preIdx + 1] = data[preIdx];
             preIdx--;
         }
         data[preIdx + 1] = current;
     }
 }
相关推荐
passer__jw76722 分钟前
【LeetCode】【算法】283. 移动零
数据结构·算法·leetcode
Ocean☾29 分钟前
前端基础-html-注册界面
前端·算法·html
顶呱呱程序37 分钟前
2-143 基于matlab-GUI的脉冲响应不变法实现音频滤波功能
算法·matlab·音视频·matlab-gui·音频滤波·脉冲响应不变法
爱吃生蚝的于勒1 小时前
深入学习指针(5)!!!!!!!!!!!!!!!
c语言·开发语言·数据结构·学习·计算机网络·算法
羊小猪~~1 小时前
数据结构C语言描述2(图文结合)--有头单链表,无头单链表(两种方法),链表反转、有序链表构建、排序等操作,考研可看
c语言·数据结构·c++·考研·算法·链表·visual studio
lc寒曦1 小时前
【VBA实战】用Excel制作排序算法动画
排序算法·excel·vba
王哈哈^_^1 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
星沁城1 小时前
240. 搜索二维矩阵 II
java·线性代数·算法·leetcode·矩阵
脉牛杂德2 小时前
多项式加法——C语言
数据结构·c++·算法
legend_jz2 小时前
STL--哈希
c++·算法·哈希算法