
直接插入排序(Straight Insertion Sort)
直接插入排序是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增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; } } }
以上是直接插入排序算法的一种实现,以下是这个案例的输出结果:
8 11 21 28 32 43 48 56 69 72 80 94
分析
直接插入排序算法的时间复杂度为: 。
AlgorithmMan

AlgorithmMan by Iori,AlgorithmMan是使用C#开发的一套用于算法演示的工具。
GitHub下载地址:https://github.com/byteflying/AlgorithmManRelease
Dark Mode

本文由 .Net中文网 原创发布,欢迎大家踊跃转载。
转载请注明本文地址:https://www.byteflying.com/archives/679。
评论列表(1条)
[…] 原文链接:https://www.byteflying.com/archives/679 […]