zoukankan      html  css  js  c++  java
  • 简单选择排序

    继续完成大话数据结构里的简单选择排序,简单排序排序的思想是:通过n-i次关键字的比较,从n-i+1个记录中选出关键字最小的记录。书中用的是下标,我感觉有些不好理解,故就更加麻烦的用了一个循环来查找下标元素,尽管这样时间复杂度增大了,但胜在好理解,当前就是想增大自己的代码量,增强自己的编程能力,故先用此方法,等学到后面再补充,代码如下;

      #include<iostream>
      using namespace std;

      int main()
      {
        int a[] = { 9, 1, 5, 8, 3, 7, 4, 6, 2 };

        int min;

        for (int i = 0; i < sizeof(a) / sizeof(int); i++)
        {
          min = a[i];
          for (int j = i + 1; j < sizeof(a) / sizeof(a[0]); j++)//经过这个循环能找出最小值,但无法确定最小值的下标
          {
            if (min > a[j])
            {
              min = a[j];
            }
          }

          for (int j = i + 1; j < sizeof(a) / sizeof(a[0]); j++)//对找出的最小值的元素,然后进行交换
          {
            if (a[j] == min)
            {
              int b;
              b = a[i];
              a[i] = a[j];
              a[j] = b;
            }
          }

       }

        for (int i = 0; i < sizeof(a) / sizeof(int); i++)//输出排好序的数组
        {
          cout << a[i] << "";
        }
        return 0;
      }

  • 相关阅读:
    v-if和v-show的区别
    关于C语言静态链接的个人理解,欢迎指正
    关于C语言中的强符号、弱符号、强引用和弱引用的一些陋见,欢迎指正
    Android: ScrollView监听滑动到顶端和底端
    Android小记之--ClickableSpan
    Android小记之--android:listSelector
    表达式参数
    Http和Socket连接
    Hibernate: merge方法
    Android小代码——设置全屏
  • 原文地址:https://www.cnblogs.com/a-dreaming-dreamer/p/5810348.html
Copyright © 2011-2022 走看看