C#实现插入排序算法

C#实现插入排序算法

以下是使用C#实现插入排序算法的示例代码:

复制代码
using System;

class InsertionSort
{
    static void Main(string[] args)
    {
        int[] arr = { 64, 25, 12, 22, 11 };

        Console.WriteLine("排序前:");
        PrintArray(arr);

        InsertionSortAlgorithm(arr);

        Console.WriteLine("\n排序后:");
        PrintArray(arr);
    }

    static void InsertionSortAlgorithm(int[] arr)
    {
        int n = arr.Length;
        for (int i = 1; i < n; i++)
        {
            int key = arr[i];
            int j = i - 1;
            // 将比key大的元素向右移动一位
            while (j >= 0 && arr[j] > key)
            {
                arr[j + 1] = arr[j];
                j--;
            }
            arr[j + 1] = key;
        }
    }

    static void PrintArray(int[] arr)
    {
        foreach (int num in arr)
        {
            Console.Write(num + " ");
        }
        Console.WriteLine();
    }
}

这段代码定义了一个名为 InsertionSort 的类,其中包含了一个静态方法 InsertionSortAlgorithm 用于实现插入排序算法。在主程序中,我们创建一个整数数组,然后调用 InsertionSortAlgorithm 方法对其进行排序,并打印排序前后的数组。

相关推荐
Mr_Xuhhh几秒前
蓝桥杯复习清单真题(C++版本)
c++·算法·蓝桥杯
tankeven2 分钟前
HJ163 时津风的资源收集
c++·算法
Boop_wu12 分钟前
[Java 算法] 动态规划(4)
数据结构·算法·leetcode
旖-旎14 分钟前
分治(计算右侧小于当前元素的个数)(7)
c++·学习·算法·leetcode·排序算法·归并排序
公子小六16 分钟前
基于.NET的Windows窗体编程之WinForms布局简介
windows·microsoft·c#·.net
zaim119 分钟前
计算机的错误计算(二百二十六)
java·python·c#·c·错数·mpmath
cxr82827 分钟前
细胞球运动追踪的卡尔曼滤波与力场插值算法 —— 活体内微米级颗粒实时定位与轨迹预测系统
算法
炘爚28 分钟前
C++(流类:istream /ostream/istringstream /ostringstream)
开发语言·c++·算法
爱睡懒觉的焦糖玛奇朵38 分钟前
【工业级落地算法之打架斗殴检测算法详解】
人工智能·python·深度学习·学习·算法·yolo·计算机视觉
练习时长一年1 小时前
后端开发常用的skill推荐
人工智能·算法·职场和发展