ホームページ  >  記事  >  Java  >  バブルソートアルゴリズムを制御するループは何ですか?

バブルソートアルゴリズムを制御するループは何ですか?

藏色散人
藏色散人転載
2019-04-10 16:51:413928ブラウズ

この記事では、バブル ソートによってどのようなループが制御されるかを主に紹介し、バブル ソート アルゴリズムは 2 層の for ループまたは 1 つの for ループで実装できます。以下にバブルソートの実装方法を具体的なコード例とともに紹介していきます!

1. バブルソーティング法とは何ですか?

隣接する要素を比較します。最初の要素が 2 番目の要素よりも大きい場合は、位置を交換し、引き続き下を見てください。

2 つ、2 つのステップバブルソート方法:

次の配列をソートします: (22,3,6,54,86,21,35,1,65,4)

#1。通常のバブルソート方法:

実装手順:

1: ループのネストを 2 層にする;

2. 条件が満たされるかどうかを判断し、位置を交換します。 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 が代入され、チームの長さが 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 ループでバブル ソートを実装バブルソートアルゴリズムを制御するループは何ですか?

この記事は PHP 中国語 Web サイトからのものです。 . さらに関連する知識ポイントについては、PHP 中国語 Web サイトのビデオ コース チャンネルにアクセスしてください。

以上がバブルソートアルゴリズムを制御するループは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjianshu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。