好久没有看算法了,今天想想选择排序(唉,跟冒泡排序搞混了),写了半个小时才写出来,人真的笨了。唉,忘记了!下次面试别人的时候,可以考考。

选择排序第一轮 找出最大或者最小的数,放到第一个位置。

第二轮 找出除第一个数以外的 最大或者最小的数,放到第二个位置。

第三轮 找出除第一个,第二个数以外的 最大或者最小的数,放到第三个位置。以此类推!

这样,共整个数组的长度*整个数组的长度次循环后,得到排序好的数组

View Code
static void Main(string[] args)
        {
            int[] numList = new int[] { 4, 3, 5, 6, 7, 9, 10, 8 };
            SelectSort(numList);
            foreach (var num in numList)
            {
                Console.WriteLine(num);
            }
        }

        public static void SelectSort(int[] numList)
        {
            if (numList.Length.Equals(0))
                return;
            else if (numList.Length.Equals(1))
                return;
            else
            {
                int temp;
                for (int i = 0; i < numList.Length; i++)
                {
                    for (int j = i + 1; j < numList.Length; j++)
                    {
                        if (numList[i] < numList[j])
                        {
                            temp = numList[i];
                            numList[i] = numList[j];
                            numList[j] = temp;
                        }
                    }
                }
            } 

 

相关文章:

  • 2021-08-11
  • 2022-12-23
  • 2021-10-17
  • 2022-02-13
  • 2021-12-21
  • 2021-12-08
  • 2021-08-10
  • 2021-08-04
猜你喜欢
  • 2021-04-26
  • 2021-06-24
  • 2022-12-23
  • 2021-06-22
  • 2021-06-17
相关资源
相似解决方案