zoukankan      html  css  js  c++  java
  • 选择排序【代码】

    思路参考:

    http://www.cnblogs.com/kkun/archive/2011/11/23/2260281.html 

    代码如下:

     1 // 171028选择排序.cpp: 定义控制台应用程序的入口点。
     2 //
     3 
     4 #include "stdafx.h"
     5 #include <iostream>
     6 #include <random>
     7 
     8 using namespace std;
     9 
    10 void selection_sort(unsigned int a[],int len)//按升序排列
    11 {
    12     int k = 0;
    13     int swap = 0;
    14     for (int i = 0; i < len - 1; i++)//多少趟
    15     {
    16         k = i;
    17         for (int j = i + 1; j < len; j++)//每次选出最小的数
    18         {
    19             k = (a[k] > a[j]) ? j : k;//如果按降序排列,这里改成a[k] < a[j]
    20         }
    21         //交换
    22         swap = a[i];
    23         a[i] = a[k];
    24         a[k] = swap;
    25     }
    26     cout << "排序之后的数组序列: ";
    27     for (int i = 0; i < len; i++)
    28     {
    29         cout << a[i] << ends;
    30     }
    31     cout << endl;
    32 }
    33 
    34 int main()
    35 {
    36     /*default_random_engine e;
    37     uniform_int_distribution<unsigned> u(0, 100);*/
    38     unsigned int test[9] = { 1,4,6,9,7,2,8,5,3 };
    39     /*for (int i = 0; i < 15; i++)
    40     {
    41         test[i] = u(e);
    42     }*/
    43     cout << "排序之前的数组序列: ";
    44     for (auto c : test)
    45         cout << c << ends;
    46     cout << endl;
    47     selection_sort(test, sizeof(test) / sizeof(test[0]));
    48     return 0;
    49 }
  • 相关阅读:
    自定义控件绘制画圆
    SQLite Database Browser 2.0使用方法
    C#学习基础概念二十五问
    C# 导出Excel的示例
    三元表达式
    界面布局(上)
    C# 反射总结
    结对作业第二次
    代码复审
    继Junit....
  • 原文地址:https://www.cnblogs.com/njuxjx/p/7746616.html
Copyright © 2011-2022 走看看