Rumah  >  Artikel  >  Java  >  Apakah cara paling mudah untuk menulis jenis gelembung dalam java

Apakah cara paling mudah untuk menulis jenis gelembung dalam java

DDD
DDDasal
2024-01-09 13:45:071065semak imbas

Cara paling mudah untuk menulis jenis gelembung Java: 1. Gunakan dua gelung bersarang untuk membandingkan elemen bersebelahan dan menukarnya Gelung luar mengawal bilangan pusingan perbandingan dan pertukaran, dan gelung dalam digunakan untuk melintasi tatasusunan dan. Lakukan operasi perbandingan dan pertukaran Selepas setiap gelung dalam, elemen terbesar akan ditukar ke penghujung tatasusunan 2. Gunakan kaedah utama untuk mencipta tatasusunan yang mengandungi beberapa integer, dan panggil kaedah Buih Susun untuk mengisih tatasusunan; , cetak tatasusunan yang diisih, dsb.

Apakah cara paling mudah untuk menulis jenis gelembung dalam java

Sistem pengendalian tutorial ini: sistem Windows 10, komputer Dell G3.

Cara paling mudah untuk menulis isihan gelembung Java adalah seperti berikut:

public class BubbleSort {
    public static void bubbleSort(int[] arr) {
        int n = arr.length;
        boolean swapped;
        
        for (int i = 0; i < n - 1; i++) {
            swapped = false;
            
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    // 交换相邻元素
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                    swapped = true;
                }
            }
            
            // 如果没有发生交换,则数组已经有序,可以提前结束循环
            if (!swapped) {
                break;
            }
        }
    }
    
    public static void main(String[] args) {
        int[] arr = {64, 34, 25, 12, 22, 11, 90};
        bubbleSort(arr);
        System.out.println("排序后的数组:");
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}

Dalam pelaksanaan isihan gelembung mudah ini, kami menggunakan dua gelung bersarang untuk membandingkan elemen bersebelahan dan menukarnya. Gelung luar mengawal bilangan pusingan perbandingan dan pertukaran, dan gelung dalam digunakan untuk melintasi tatasusunan dan melakukan operasi perbandingan dan pertukaran. Selepas setiap pusingan gelung dalam, elemen terbesar ditukar ke hujung tatasusunan. Keadaan akhir gelung dalam ialah n - i - 1, dengan n ialah panjang tatasusunan dan i ialah indeks gelung luar. Gelung dalam juga menggunakan bendera yang ditukar untuk menentukan sama ada pertukaran telah berlaku Jika tiada pertukaran berlaku, ini bermakna tatasusunan adalah teratur dan gelung boleh ditamatkan lebih awal.

Dalam kaedah utama, kami mencipta tatasusunan yang mengandungi beberapa integer dan memanggil kaedah bubbleSort untuk mengisih tatasusunan. Akhirnya, kami mencetak tatasusunan yang diisih.

Kerumitan masa pelaksanaan isihan gelembung mudah ini ialah O(n^2), dengan n ialah panjang tatasusunan. Walaupun pelaksanaan ini ringkas dan mudah difahami, ia kurang cekap untuk set data yang besar. Oleh itu, dalam aplikasi praktikal, algoritma pengisihan lain yang lebih cekap mungkin perlu dipertimbangkan.

Atas ialah kandungan terperinci Apakah cara paling mudah untuk menulis jenis gelembung dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn