真正的冒泡排序

原创 2013年12月02日 18:27:39
/*
 * Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作    者:张梦佳
* 完成日期:2013 年 12 月2 日
* 版 本 号:v1.0
*
* 输入描述:
* 问题描述:
* 程序输出:冒泡排序
* 问题分析:
* 算法设计:
*/
#include <iostream>
using namespace std;
void bubble_sort(int a[],int);   //用冒泡法按降序排序a中元素
void output_array(int s[],int);   //输出排序后的数组
int main( )
{
    int a[20]= {86,76,62,58,77,85,92,80,96,88,77,67,80,68,88,87,64,59,61,76};
    int b[15]= {27,61,49,88,4,20,28,31,42,62,64,14,88,27,73};
    bubble_sort(a,20);   //用冒泡法按降序排序a中元素
    output_array(a,20);
    cout<<endl;  //输出排序后的数组
    bubble_sort(b,15);   //用冒泡法按降序排序b中元素
    output_array(b,15);
    cout<<endl;   //输出排序后的数组
    return 0;
}

void bubble_sort(int a[],int n)
{
    int i,z;
    double b;
    for(i=0;i<n-1;i++)
    {
        for(z=0;z<n-i-1;z++)
        if(a[z]<a[z+1])
        {
            b=a[z];
            a[z]=a[z+1];
            a[z+1]=b;
        }
    }

}
void output_array(int s[],int n)
{
    int i;
    for(i=0; i<n; i++)
    {
        cout<<s[i]<<" ";
    }
}


感悟

老是过界。。。。。。

8种经典算法之冒泡排序

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交...
  • qq_31301099
  • qq_31301099
  • 2015年12月08日 21:48
  • 421

冒泡排序的实现及优缺点

冒泡实现的原理是:从第一个数开始,依次和后面的数作比较,数值小的往上浮。例如:一共五个数,那么第一个数依次和后面四个数作比较。如果第一个数大于后面的数后,交换之后再比较。依次类推。下面是实现的源码 :...
  • zl544434558
  • zl544434558
  • 2014年02月21日 11:27
  • 2777

冒泡排序最佳情况的时间复杂度,为什么是O(n)

转自:  http://www.cnblogs.com/melon-h/archive/2012/09/20/2694941.html
  • u010013164
  • u010013164
  • 2014年09月19日 06:38
  • 3460

冒泡排序的2种写法

假如有几个数字int score[] = {67, 69, 75, 88};  按照从大到小排序。 有2种思路,第一种,score[j] 和 score[j+1] 比较 如果 前者比后者小,把前者和...
  • shuaizai88
  • shuaizai88
  • 2017年06月14日 17:52
  • 2737

冒泡排序的基本思想

冒泡法排序是很常用的排序方法,文中给出了详细的讲解,并给出了VB的代码!...
  • doublelions
  • doublelions
  • 2011年05月07日 23:30
  • 4328

冒泡排序的实际应用

冒泡排序的实际应用 1.小规模数据排序 如,4个数进行排序时,通常手动写6次比较的冒泡排序。 #define cs(a,b) (if(a>b){int t; t = a; a = b; b = t;}...
  • yushulinfengprc
  • yushulinfengprc
  • 2017年03月23日 22:00
  • 1356

例子说冒泡排序

1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3. 针对所有的元素重复以上...
  • u010927640
  • u010927640
  • 2016年03月31日 20:04
  • 4423

生成真正的随机数!

这里涉及到伪随机数的概念,什么是伪随机数呢?伪随机数是使用一些称为种子(seed)的初始值通过某种算法得到的。这个算法是确定的,因此产生的数字序列在统计上并不是随机的。不过,假如这个算法优良,那么结果...
  • kkkandy
  • kkkandy
  • 2007年01月10日 16:36
  • 4308

OC的冒泡排序

#import int main(int argc, const char * argv[]) { @autoreleasepool { /* 冒泡...
  • qq331429844
  • qq331429844
  • 2015年10月13日 21:04
  • 6580

关于冒泡排序的最简单方法和进一步的优化

对冒泡排序的进一步优化
  • qq_25827845
  • qq_25827845
  • 2016年02月12日 13:18
  • 2899
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:真正的冒泡排序
举报原因:
原因补充:

(最多只允许输入30个字)