旗下导航:搜·么
当前位置:网站首页 > JAVA教程 > 正文

冒泡排序算法由一个什么轮回掌握?【JAVA教程】,冒泡排序算法

作者:搜教程发布时间:2019-11-27分类:JAVA教程浏览:23评论:0


导读:本篇文章主要给人人引见冒泡排序由一个什么轮回掌握的,那末冒泡排序算法能够由双层for轮回完成,也能够由单个for轮回完成。下面我们就连系细致的代码示例,给人人引见冒泡排序的完成要领...
本篇文章主要给人人引见冒泡排序由一个什么轮回掌握的,那末冒泡排序算法能够由双层for轮回完成,也能够由单个for轮回完成。下面我们就连系细致的代码示例,给人人引见冒泡排序的完成要领!

一、什么叫冒泡排序法?

比较相邻的元素,假如第一个比第二个大,就交流他们两个的位置,然后继承往下找

二、两种冒泡排序法步骤:

对以下数组举行排序:(22,3,6,54,86,21,35,1,65,4)

1.一般的冒泡排序法:

完成步骤:

1:双层for轮回嵌套;

2.推断前提假如满足,交流两数位置;

public class BubbleSort {
    public static void main(String[] args) {
        
        int a[]={22,3,6,54,86,21,35,1,65,4};
        
        for(int i= 0 ;i<a.length;i++){    //第一层轮回
            for(int j=0;j<a.length-i-1;j++){    //第二层轮回
                if(a[j]>a[j+1]){  
                                  //交流位置
                    int tem =a[j];
                    a[j]=a[j+1];
                    a[j+1]=tem;
                }
            }
        }
        System.out.println("排好序:");
        for(int aa:a){
            System.out.print(aa+" ");
        }
    }
}

效果展现:

双层for轮回完成冒泡排序法

2.单个for轮回完成冒泡排序法:

a.)定义待排序数组及数组相干长度

int a[]={22,3,6,54,86,21,35,1,65,4};
  int team=a.length-1;

b.)排序完成:

1.单个for轮回;

2. 推断是不是应当交流位置;

for(int i= 0 ;i<team;i++){
        if(a[i]>a[i+1]){
        int tem =a[i];
        a[i]=a[i+1];
        a[i+1]=tem;
        }
}

3. 推断该趟for轮回是不是完毕;

4. 若该趟for轮回完毕将给i赋值-1,而且将team的长度减1,继承下趟轮回;

if(i==team-1){
            i=-1;
            team--;
}

c.)完全顺序:

//单个for轮回的冒泡排序法
public class BubbleSort {
    public static void main(String[] args) {
        
    int a[]={22,3,6,54,86,21,35,1,65,4};
    int team=a.length-1;
    for(int i= 0 ;i<team;i++){
        if(a[i]>a[i+1]){
        int tem =a[i];
        a[i]=a[i+1];
        a[i+1]=tem;
        }
        if(i==team-1){
            i=-1;
            team--;
        }
    }
    System.out.println("排好序:");
    for(int aa:a){
        System.out.print(aa+" ");
    }
    }
}

效果展现:

单个for轮回完成冒泡排序

本文来自ki4网,更多相干知识点请前去ki4网视频课程频道!

以上就是冒泡排序算法由一个什么轮回掌握?的细致内容,更多请关注ki4网别的相干文章!

标签:冒泡排序算法


欢迎 发表评论: