开发者社区> 问答> 正文

什么是冒泡排序算法

什么是冒泡排序算法

展开
收起
知与谁同 2018-07-21 14:56:54 1351 0
3 条回答
写回答
取消 提交回答
  • 冒泡排序算法是两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。

    2019-07-17 22:49:32
    赞同 展开评论 打赏
  • 在百度搜索“冒泡排序”就会有详细的资料。
    2019-07-17 22:49:32
    赞同 展开评论 打赏
  • 胜天半子
    基本思路:对尚未排序的各元素从头到尾依次比较相邻的两个元素是否逆序(与欲排顺序相反),若逆序就交换这两元素,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有 n 个元素,那么一共要进行 n-1 轮比较,第 i 轮要进行 j=n-i 次比较。

    我也不知道你说的是用哪种语言编写:就列出了如下几种,希望你能满意
    #include<stdio.h>
    void main()
    {
    int a[10];
    int i,j,t;
    printf("输入10个整数:\n");
    for( i = 0; i < 10; i ++ )
    scanf("%d",&a[ i ]); //依次输入10个整数
    for( j = 0; j < 9; j ++ ) //进行9轮排序 即n-1次
    {
    for( i = 0; i < 9-j; i ++) //每轮进行n-1-j 次比较,最多n-1-j 次交换
    if( a[ i ] > a[ i + 1 ] )
    {
    t = a[ i ] ;
    a[ i ] = a[ i + 1 ]; //小的沉底,大的上浮
    a[ i + 1 ] = t;
    }
    }
    printf("排序结果:");
    for( i = 0; i < 10; i ++ ) //依次输出排序结果
    printf("%d\t",a[ i ]);
    printf("\n");
    }
    PASCAL为例子
    procedure Bubble_Sort(var L:List);
    vari,j:position;
    begin
    for i:=First(L) to Last(L)-1 do
    for j:=First(L) to Last(L)-i do
    if L[j]>L[j+1] then 4 swap(L[j],L[j+1]);
    //交换L[j]和L[j+1]
    end;
    下面使用c++语言编写
    #include<iostream.h>
    void main()
    {
    int a[n],i,j,temp;
    cout<<"请输入数字:"<<endl;
    for(i=0;i<=n;i++)
    cin>>a; //依次输入n个整数
    for(i=0;i<n;i++)
    {
    for(j=i+1;j<n;j++)
    if(a<a[j]) //利用临时变量temp交换顺序
    { temp=a[j];
    a[j]=a;
    a=temp;
    }
    cout<<a<<' '; //依次输出结果
    }
    下面使用Visual Basic编写
    Option Explicit
    Private Sub Form_Load()
    Dim a, c As Variant
    Dim i As Integer, temp As Integer, w As Integer
    a = Array(12, 45, 17, 80, 50)
    For i = 0 To UBound(a) - 1
    If (a(i) > a(i + 1)) Then '若是递减,改为a(i)<a(i+1)
    temp = a(i)
    a(i) = a(i + 1)
    a(i + 1) = temp
    End If
    Next
    For Each c In a
    Print c;
    Next
    End Sub
    2019-07-17 22:49:32
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载