zoukankan      html  css  js  c++  java
  • 插入排序

    static void Main(string[] args)
            {
                RArray arr = new RArray(10);
                Random r = new Random(100);
                for (int i = 0; i < 10; i++)
                {
                    arr.Insert(r.Next(0, 100));
                }
                arr.DisPlayElements();
    
    
                Console.WriteLine("Bubble Sort.....");
                RArray list = BubbleSort(arr);
                list.DisPlayElements(); 
                Console.WriteLine("Selection Sort.....");
                list = SelectionSort(arr);
                list.DisPlayElements();
                Console.WriteLine("Insert Sort.....");
                list = InsertSort(arr);
                list.DisPlayElements();
                Console.ReadKey();
            }
           static RArray InsertSort(RArray arr)
            {
    
                int inner, temp;
                for (int outer = 1; outer <= arr.upper; outer++)
                {
                    temp = arr[outer];
                    inner = outer;
                    while (inner > 0 && arr[inner - 1] >= temp)
                    {
                        arr[inner] = arr[inner - 1];
                        inner -= 1;
                    }
                    arr[inner] = temp;
                }
                return arr;
            }

    插入排序算法有两层循环。 外层循环会逐个遍历数组元素, 而内层循环则会把外层循环所选
    择的元素与该元素在数组内的下一个元素进行比较。 如果外层循环选择的元素小于内层循环
    选择的元素, 那么数组元素都向右移以便为内层循环元素留出位置.

  • 相关阅读:
    图表插件echars的使用案例
    安装Eclipse
    ef 更新数据库
    webapi Route 特性
    WebSite下创建webapi
    C# 泛型约束
    Session共享
    ubuntu eclipse 无法打开
    C# TreeView 连续点击 不触发AfterCheck事件
    ef 仓储模式 Redis
  • 原文地址:https://www.cnblogs.com/Francis-YZR/p/4971541.html
Copyright © 2011-2022 走看看