zoukankan      html  css  js  c++  java
  • C#排序算法之插入排序

    排序规则:

      将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。

      从头到尾依次扫描未排序序列,将扫描到的每个元素插入到有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面)。

    时间复杂度

      平均时间复杂度:O(n^2),最好情况:O(n),最坏情况:O(n^2)

    using System;
    using System.Collections.Generic;
    using System.Globalization;
    using System.Text;
    
    namespace 排序算法
    {
        class InsertSort
        {
            public static void Sort(int[] arr) {
                int n = arr.Length;
                for(int i = 1; i < n; i++)
                {
                    int e = arr[i];
                    int j;
                    for( j = i; j > 0; j--)
                    {
                        if(e < arr[j - 1])
                        {
                            arr[j] = arr[j - 1];
                        }
                        else
                        {
                            break;
                        }
                    }
                    arr[j] = e;
                }
            }
        }
    }
  • 相关阅读:
    request实现登录
    python之对象
    python基础之迭代与解析
    python基础之函数
    linux expect命令使用入门
    Python socket
    1
    蓝牙
    SQL查询语句
    iOS常用小知识纪录
  • 原文地址:https://www.cnblogs.com/sy-liu/p/13263190.html
Copyright © 2011-2022 走看看