• c# 选择排序


    基本思想 

       每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。

     
      选择排序是稳定的排序方法。 

    排序过程

      【示例】:

     

      初始关键字 [49 38 65 97 76 13 27 49]

     

      第一趟排序后 13 [38 65 97 76 49 27 49]

     

      第二趟排序后 13 27 [65 97 76 49 38 49]

     

      第三趟排序后 13 27 38 [97 76 49 65 49]

     

      第四趟排序后 13 27 38 49 [76 97 65 49 ]

     

      第五趟排序后 13 27 38 49 49 [97 65 76]

     

      第六趟排序后 13 27 38 49 49 65 [97 76]

     

      第七趟排序后 13 27 38 49 49 65 76 [97]

     

      最后排序结果 13 27 38 49 49 65 76 97


       C# 选择排序代码 


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Collections;
     
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //选择排序
                List<int> a = new List<int>();
                List<int> b = new List<int>();
     
                a.Add(50);
                a.Add(80); a.Add(49); a.Add(10); a.Add(66);
     
                int pos = 0;
     
                int loopCount = 0;

                for (int i =0; i<a.Count-1;i++)
                {
                    loopCount++;
                   
                    if (a[pos] < a[i + 1])
                    {
                        pos = i + 1;
                    }
     
                    if ((i + 1) == a.Count -1)
                    {
                        b.Add(a[pos]);
                        a.RemoveAt(pos);
     
                        pos = 0;
                       
                        i = -1;
                    }
                }
     
                var result = b.Concat(a);
                List<int> resultList = result.ToList();
     
                Console.WriteLine(result.ToString());
                Console.ReadLine();
     
            }
     
     
        }
    }
     
  • 相关阅读:
    python 元组列表合并
    python 将元组解析为多个参数
    python 元组切片
    python 元组元素反转
    python 删除元组元素
    Ubuntu 16.04 kinetic 编译指定包
    ubuntu16.04 kinetic 安装 robot-pose-publisher
    ubuntu 16.04 kinetic 安装rosbridge
    sudo: unable to resolve host myhostname: Connection timed out
    python 元组元素计数
  • 原文地址:https://www.cnblogs.com/jiahuafu/p/9117307.html
Copyright © 2020-2023  润新知