zoukankan      html  css  js  c++  java
  • 选择排序——C语言

    选择排序

    1、算法描述

    首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕(放到起始位置还是末尾可以自行选择)

    2、代码实现

     1 int num[5] = {7, 3, 5, 8, 1};
     2     int i, j;
     3     int minIndex;    //待排序列中最小数的下标
     4     int temp;
     5     int length = sizeof(num) / sizeof(num[0]);
     6 
     7     /* 选择排序-升序*/
     8     for (i = 0; i < length - 1; i++)
     9     {
    10         minIndex = i;
    11         for (j = i + 1; j < length; j++)
    12         {
    13             if (num[j] < num[minIndex])
    14             {
    15                 minIndex = j;
    16             }
    17         }
    18         temp = num[i];
    19         num[i] = num[minIndex];
    20         num[minIndex] = temp;
    21     }

    3、排序过程(gif)

    四、关于算法性能

    与冒泡排序相比选择排序的交换次数较少,由于交换所需CPU时间比比较所需的CPU时间多,n值较小时,选择排序比冒泡排序快

  • 相关阅读:
    java poi 从服务器下载模板写入数据再导出
    一个华为面试题
    ForEach 循环
    fmt标签格式化数字和时间
    Ichars制作数据统计图
    jQuery中的事件
    oracle学习第四天
    GET请求和POST请求
    Jsp的九个隐含对象
    Oracle学习【语句查询】
  • 原文地址:https://www.cnblogs.com/lanhaicode/p/11276943.html
Copyright © 2011-2022 走看看