C#算法设计排序篇之03-直接插入排序(附带动画演示程序)
直接插入排序(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-直接插入排序(附带动画演示程序)相关推荐
- C#算法设计排序篇之04-选择排序(附带动画演示程序)
选择排序(Selection Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/681 访问. 选择排序是一种简 ...
- C#算法设计排序篇之06-堆排序(附带动画演示程序)
堆排序(Heap Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/685 访问. 堆排序是指利用堆积树(堆)这 ...
- C#算法设计排序篇之10-桶排序(附带动画演示程序)
桶排序(Bucket Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/693 访问. 桶排序的工作原理是将数组 ...
- C#算法设计排序篇之11-二叉树排序(附带动画演示程序)
二叉树排序(Binary Tree Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/695 访问. 二叉树排序 ...
- C#算法设计排序篇之09-基数排序(附带动画演示程序)
基数排序(Radix Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/691 访问. 基数排序属于" ...
- C#算法设计排序篇之08-计数排序(附带动画演示程序)
计数排序(Counting Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/689 访问. 计数排序是一个非基 ...
- C#算法设计排序篇之07-希尔排序(附带动画演示程序)
希尔排序(Shell's Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/687 访问. 希尔排序是插入排序的 ...
- C#算法设计排序篇之05-归并排序(附带动画演示程序)
归并排序(Merge Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/683 访问. 归并排序是建立在归并操作 ...
- C#算法设计排序篇之02-快速排序(附带动画演示程序)
快速排序(Quick Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/677 访问. 快速排序由C. A. R ...
最新文章
- centos 设置双网卡,双网关
- C# 类的几种方法调用
- 设计模式(九)--注册树模式
- mysql mysqladmin 介绍_Mysql—mysqladmin 命令详解
- 打球崴脚,运动崴脚怎么办?这里有一份最强处置指南
- ubuntu python3.7修改默认pip版本_Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
- (08)VHDL实现2路选择器
- 前字节跳动程序员 28 岁提前退休引热议,网友:我也想!
- 爬虫mm131明星照片
- 从二进制格雷码到任意进制格雷码(1)
- 第11章:项目风险管理——章节真题
- 教你用VC6写热血江湖小外挂
- steam linux 安装目录,「Linux」- 安装 Steam 客户端 @20210219
- WC!咱平时使用的PDF,原来这么不安全?
- 关于NIST随机数测试软件报错问题的补充
- Java -- SQL注入
- NBA赛事直播超清画质背后:阿里云视频云「窄带高清2.0」技术深度解读
- mysql http隧道_Navicat™ 数据库 HTTP 隧道通信协议
- SSL证书信任问题处理,两种解决方案
- IAR7.8 IAR8.5 IAR9.10.1 IAR9.10.2 KEIL 安装包