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 方法对其进行排序,并打印排序前后的数组。

相关推荐
颜x小9 小时前
[C#]——接口与继承
开发语言·c++·c#
冻柠檬飞冰走茶9 小时前
PTA基础编程题目集 7-17 爬动的蠕虫(C语言实现)
c语言·开发语言·数据结构·算法
会编程的土豆10 小时前
LeetCode 热题 HOT100(一):哈希表与双指针入门(Go 实现)
算法·leetcode·职场和发展
学习中.........10 小时前
并行 BPE 训练 与 手写 `Tokenizer`
人工智能·算法·机器学习·语言模型
科学实验家10 小时前
动态规划2
算法·动态规划
imuliuliang20 小时前
关于数据结构在算法设计中的核心作用解析7
算法
2401_8949155321 小时前
GEO 搜索优化完整源码从零部署:环境配置、集群搭建全流程
开发语言·python·tcp/ip·算法·unity
普通网友1 天前
共识算法实现:从工作量证明到权益证明的演进
算法·区块链·共识算法
颜x小1 天前
[C#] C++与c#语法对比
开发语言·c++·c#