Isih gelembung ialah salah satu algoritma yang paling biasa digunakan untuk mengisih data dalam Java. Pengisihan dilakukan secara rekursif membandingkan nombor bersebelahan dan mengalihkannya dalam susunan meningkat atau menurun. Peralihan elemen ini dilakukan sehingga semua digit diisih sepenuhnya dalam susunan yang diperlukan. Isih buih ialah nama kerana unsur buih tatasusunan adalah cara mereka bermula. Marilah kita memahami algoritma isihan gelembung dengan mengambil contoh.
Contoh: Pertimbangkan tatasusunan nombor [6 1 8 5 3] yang perlu disusun dalam susunan yang semakin meningkat.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Algoritma isihan gelembung berfungsi dalam berbilang lelaran sehingga ia mendapati semua nombor diisih.
Di bawah ialah lelaran yang dilakukan dalam Bubble Sort di Java iaitu seperti berikut:
Memandangkan bilangannya masih belum meningkat sepenuhnya, atur cara pergi untuk lelaran kedua.
[1 6 5 3 8] – Di sini, perbandingan sekali lagi bermula daripada dua digit pertama hasil lelaran pertama. Ia membandingkan nombor 1 dan 6 dan mengekalkan susunan yang sama kerana 1 lebih kecil daripada 6. [1 6 5 3 8] – Di sini, nombor 5 dan 6 dibandingkan. Pesanan yang sama dikekalkan kerana ia sudah berada dalam susunan yang semakin meningkat yang diperlukan. [1 5 6 3 8] – Perbandingan berlaku antara nombor 6 dan 3. Nombor 3 dianjak ke kiri kerana ia lebih kecil daripada 6. [1 5 3 6 8] – Seterusnya, nombor 6 dan 8 dibandingkan antara satu sama lain. Pesanan yang sama dikekalkan kerana ia dalam susunan yang dijangkakan. [1 5 3 6 8] – Ini adalah keputusan akhir selepas lelaran kedua. Namun, kita dapat perhatikan bahawa digit tidak disusun sepenuhnya dalam susunan yang semakin meningkat. Namun, kita perlu bertukar nombor 5 dan 3 untuk mendapatkan keputusan akhir. Oleh itu program ini pergi untuk lelaran ketiga.Memandangkan hanya 5 elemen tatasusunan perlu diisih, ia mengambil masa 3 lelaran sahaja. Apabila elemen dalam tatasusunan bertambah, jumlah lelaran juga meningkat.
Di bawah ialah kod Java, yang melaksanakan algoritma isihan Bubble. (Perhatikan bahawa kedudukan pertama tatasusunan dalam Java bermula pada 0 dan berterusan dalam kenaikan 1, iaitu tatasusunan[0], tatasusunan[1], tatasusunan[2], dan ia berterusan.)
Kod:
import java.util.Scanner; public class BubbleSort { static void bubbleSort(int[] arraytest) { int n = arraytest.length; //length of the array is initialized to the integer n int temp = 0; //A temporary variable called temp is declared as an integer and initialized to 0 for(int i=0; i < n; i++){ // first for loop performs multiple iterations for(int j=1; j < (n-i); j++){ if(arraytest[j-1] > arraytest[j]){ // if loop compares the adjacent numbers // swaps the numbers temp = arraytest[j-1]; // assigns the greater number to temp variable arraytest[j-1] = arraytest[j]; // shifts the lesser number to the previous position arraytest[j] = temp; // bigger number is then assigned to the right hand side } } } } public static void main(String[] args) { int arraytest[] ={23,16,3,42,75,536,61}; // defining the values of array System.out.println("Array Before Doing Bubble Sort"); for(int i=0; i < arraytest.length; i++){ // for loop used to print the values of array System.out.print(arraytest[i] + " "); } System.out.println(); bubbleSort(arraytest); // array elements are sorted using bubble sort function System.out.println("Array After Doing Bubble Sort"); for(int i=0; i < arraytest.length; i++){ System.out.print(arraytest[i] + " "); // for loop to print output values from array } } }
Output:
Di bawah ialah kelebihan dan kelemahan yang berbeza bagi isihan buih di java:
Memandangkan isihan Bubble mampu mengesan ralat minit dalam pengisihan, ia digunakan dalam grafik komputer. Ia juga digunakan dalam algoritma pengisian poligon, di mana lapisan bucu poligon perlu diisih.
Artikel ini melihat cara algoritma Isih Bubble berfungsi dan cara ia boleh dilaksanakan menggunakan pengaturcaraan Java. Bubble sort ialah algoritma yang sangat stabil yang boleh dilaksanakan dengan mudah untuk set data yang agak kecil. Ia adalah kes algoritma perbandingan dan digunakan oleh orang baru kerana kesederhanaannya.
Atas ialah kandungan terperinci Isih Buih di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!