直接插入排序(Straight Insertion Sort)

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/679 访问。

直接插入排序是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。


示例: 

public class Program {public static void Main(string[] args) {int[] array = { 43, 69, 11, 72, 28, 21, 56, 80, 48, 94, 32, 8 };StraightInsertionSort(array);ShowSord(array);Console.ReadKey();}private static void ShowSord(int[] array) {foreach (var num in array) {Console.Write($"{num} ");}Console.WriteLine();}public static void StraightInsertionSort(int[] array) {for (int i = 1; i < array.Length; i++) {int sentinel = array[i];int j = i - 1;while (j >= 0 && sentinel < array[j]) {array[j + 1] = array[j];j--;}array[j + 1] = sentinel;}}}

以上是直接插入排序算法的一种实现,以下是这个案例的输出结果:

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/679 访问。

8 11 21 28 32 43 48 56 69 72 80 94

分析:

直接插入排序算法的时间复杂度为:  。


AlgorithmMan:

AlgorithmMan by Iori,AlgorithmMan是使用C#开发的一套用于算法演示的工具。

下载链接:AlgorithmMan-StraightInsertionSort

C#算法设计排序篇之03-直接插入排序(附带动画演示程序)相关推荐

  1. C#算法设计排序篇之04-选择排序(附带动画演示程序)

    选择排序(Selection Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/681 访问. 选择排序是一种简 ...

  2. C#算法设计排序篇之06-堆排序(附带动画演示程序)

    堆排序(Heap Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/685 访问. 堆排序是指利用堆积树(堆)这 ...

  3. C#算法设计排序篇之10-桶排序(附带动画演示程序)

    桶排序(Bucket Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/693 访问. 桶排序的工作原理是将数组 ...

  4. C#算法设计排序篇之11-二叉树排序(附带动画演示程序)

    二叉树排序(Binary Tree Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/695 访问. 二叉树排序 ...

  5. C#算法设计排序篇之09-基数排序(附带动画演示程序)

    基数排序(Radix Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/691 访问. 基数排序属于" ...

  6. C#算法设计排序篇之08-计数排序(附带动画演示程序)

    计数排序(Counting Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/689 访问. 计数排序是一个非基 ...

  7. C#算法设计排序篇之07-希尔排序(附带动画演示程序)

    希尔排序(Shell's Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/687 访问. 希尔排序是插入排序的 ...

  8. C#算法设计排序篇之05-归并排序(附带动画演示程序)

    归并排序(Merge Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/683 访问. 归并排序是建立在归并操作 ...

  9. C#算法设计排序篇之02-快速排序(附带动画演示程序)

    快速排序(Quick Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/677 访问. 快速排序由C. A. R ...

最新文章

  1. centos 设置双网卡,双网关
  2. C# 类的几种方法调用
  3. 设计模式(九)--注册树模式
  4. mysql mysqladmin 介绍_Mysql—mysqladmin 命令详解
  5. 打球崴脚,运动崴脚怎么办?这里有一份最强处置指南
  6. ubuntu python3.7修改默认pip版本_Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
  7. (08)VHDL实现2路选择器
  8. 前字节跳动程序员 28 岁提前退休引热议,网友:我也想!
  9. 爬虫mm131明星照片
  10. 从二进制格雷码到任意进制格雷码(1)
  11. 第11章:项目风险管理——章节真题
  12. 教你用VC6写热血江湖小外挂
  13. steam linux 安装目录,「Linux」- 安装 Steam 客户端 @20210219
  14. WC!咱平时使用的PDF,原来这么不安全?
  15. 关于NIST随机数测试软件报错问题的补充
  16. Java -- SQL注入
  17. NBA赛事直播超清画质背后:阿里云视频云「窄带高清2.0」技术深度解读
  18. mysql http隧道_Navicat™ 数据库 HTTP 隧道通信协议
  19. SSL证书信任问题处理,两种解决方案
  20. IAR7.8 IAR8.5 IAR9.10.1 IAR9.10.2 KEIL 安装包

热门文章

  1. numpy常用函数(更新中)
  2. numpy+pandas+matplotlib画箱形图
  3. 接口的基本演练 java
  4. c#winform演练 ktv项目 播放歌曲同时显示歌曲名称与歌手
  5. 14-mysql-分页查询
  6. 记一次mysql进程无法启动的解决方案
  7. Python3 调用 Node.js 解析 MathJax 公式
  8. SAP编程中最基本的概念
  9. 23个Python爬虫开源项目代码Python爬虫开源项目代码
  10. asp.net core 教程(六)-中间件