码迷,mamicode.com
首页 > 编程语言 > 详细

直接选择排序

时间:2015-07-18 21:17:08      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

public class StraightSelectSort
    {
        public static void Sort(int[] array)
        {
            //要遍历的次数
            for (int i = 0; i < array.Length - 1; i++)
            {
                //假设tempIndex的下标的值最小
                int tempIndex = i;

                for (int j = i + 1; j < array.Length; j++)
                {
                    //如果tempIndex下标的值大于j下标的值,则记录较小值下标j
                    if (array[tempIndex] > array[j])
                        tempIndex = j;
                }

                //最后将假想最小值跟真的最小值进行交换
                var tempData = array[tempIndex];
                array[tempIndex] = array[i];
                array[i] = tempData;
            }
            //return array;
        }
    }

直接选择排序的时间复杂度为O(n²)。由于在直接选择排序中存在着不相邻元素之间的互换,因此,直接选择排序是一种不稳定的排序方法。 

 

直接选择排序

标签:

原文地址:http://www.cnblogs.com/laixiancai/p/4657484.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!