zoukankan      html  css  js  c++  java
  • 冒泡排序

    这里参考的是大话数据结构里的冒泡排序,冒泡排序的基本思想是:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。冒泡法的效率是非常低下的。现在贴上代码:

      #include<iostream>
      using namespace std;

      int main()
      {
        int a[] = { 1, 5, 3, 7, 2, 9, 8 };
        bool flag = true;//标志位,防止无意义的循环
        for (int i = 0; i < sizeof(a) / sizeof(int)&&flag; i++)
        {
          flag = false;
          for (int j = sizeof(a) / sizeof(int)-1; j > i; j--)
          {
            if (a[j] < a[j - 1])
            {
              int b;
              b = a[j];
              a[j] = a[j-1];
              a[j-1] = b;
              flag = true;//如果有数据交换则flag置为true
            }
          }
        }
      for (int i = 0; i < sizeof(a) / sizeof(int); i++)//输出排好序的数组
      {
        cout << a[i] << "";
      }
      return 0;
      }

    将代码中数组中的元素写成一列,这样就能很直观的表现出冒泡法的思想,或许这就是冒泡法的由来吧。

  • 相关阅读:
    Log4Net 全方位跟踪程序运行
    ASP.NET MVC 3和Razor中的@helper 语法
    C# 4.0四大新特性代码示例与解读
    程序员必读
    重学算法(1)--遍历二叉树
    重学算法-目录
    Epplus使用技巧
    JQuery 获取URL中传递的参数
    Epplus 使用案例
    .net调用存储过程详解(转载)
  • 原文地址:https://www.cnblogs.com/a-dreaming-dreamer/p/5809931.html
Copyright © 2011-2022 走看看