zoukankan      html  css  js  c++  java
  • 八种排序整理(三)----冒泡排序

    冒泡排序可以说是最常用的也是最容易理解的一种排序了,从最早接触计算机语言掌握的第一种排序

    就是冒泡排序。

    基本概念:对于给定的n个记录,从第一个记录开始依次对相邻的两个记录进行比较,当前面的记录大于

    后面的记录时,交换其位置,进行一轮比较和交换位置后,n个记录中的最大记录将位于第n位;然后对

    前(n - 1)个记录进行第二轮比较;重复该过程直到进行比较的记录只剩下一个为止。

    冒泡排序基本思想是:对待排序的数字进行两两比较,如发现两个数字是反序的,则进行交换,直到无反序的

    记录为止。

    冒泡排序特点分析:

    稳     定   性:稳定。

    时间复杂度:总共比较 n(n-1)/2 次  时间复杂度为O(n2)。

     1 #include <iostream>
     2 
     3 using namespace std;
     4 
     5 void BubbleSort(int array[], int len)
     6 {
     7     int i, j;
     8     int temp;
     9 
    10     for (i = 0; i < len -1; ++i)
    11     {
    12         for (j = len - 1; j > i; --j)
    13         {
    14             if (array[j] < array[j - 1])
    15             {
    16                 temp = array[j];
    17                 array[j] = array[j - 1];
    18                 array[j - 1] = temp;
    19             }
    20         }
    21     }
    22 }
    23 
    24 int main()
    25 {
    26     int i = 0;
    27     int a[] = {29, 18, 87, 56, 3, 27};
    28     int length = sizeof(a) / sizeof(a[0]);
    29 
    30     BubbleSort(a, length);
    31 
    32     for (i = 0; i < length; i++)
    33     {
    34         printf("%d ", a[i]);
    35     }
    36     printf("
    ");
    37     while(1);
    38 
    39     return 0;
    40 }

  • 相关阅读:
    Mac 配置前端基本环境
    sass安装 使用
    SVG
    css规范
    [转载] Solaris命令使用
    solaris 10 基本使用
    dos taskkill 命令
    servicemix-3.2.1 内置的服务引擎和绑定组件
    servicemix-3.2.1 部署异常
    解析XML内容到User对象
  • 原文地址:https://www.cnblogs.com/kutoli/p/8329204.html
Copyright © 2011-2022 走看看