zoukankan      html  css  js  c++  java
  • 简单排序算法C#

     选择排序的基本思想是:每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。
      
      主要有:简单选择排序、树型选择排序和堆排序。
    简单选择排序

     简单选择排序的基本思想:第i趟简单选择排序是指通过n-i次关键字的比较,从n-i+1个记录中选出关键字最小的记录,并和第i个记录 进行交换。共需进行i-1趟比较,直到所有记录排序完成为止。例如:进行第i趟选择时,从当前候选记录中选出关键字最小的k号记录,并和第i个记录进行交 换

    c#代码:
     #region 简单选择排序

            static void SimpleSelectSort(ref int[] array)
            {
                for (int n = 0; n < array.Length; n++)
                {
                    int position = GetMinPosition(array, n);
                    if (n != position)
                    {
                        int temp = array[n];
                        array[n] = array[position];
                        array[position] = temp;
                    }
                }
            }
            /// <summary>
            /// 在数组array中从下标i开始,查找最小数字的下标,并返回
            /// </summary>
            /// <param name="array"></param>
            /// <param name="i"></param>
            /// <returns></returns>
            static int GetMinPosition(int[] array, int i)
            {
                int temp = array[i];
                int position = i;
                for (int n = i; n < array.Length; n++)
                {
                    if (array[n] < temp)
                    {
                        temp = array[n];
                        position = n;
                    }
                }
                return position;
            }
            #endregion




    本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

  • 相关阅读:
    Python中的结构化数据分析利器-Pandas简介
    A great tutorial with Jupyter notebook for ML beginners
    快速修改Matlab默认启动路径(Windows/Mac)
    十大opengl教程
    vtk 基础概念
    OpenGL入门学习
    glut glew区别
    测试程序
    说说C语言运算符的“优先级”与“结合性”
    c++ ACM常用函数
  • 原文地址:https://www.cnblogs.com/zjypp/p/2319296.html
Copyright © 2011-2022 走看看