Idea asas Isih Buih ialah: dengan merawat
urutan isihan adalah dari hadapan ke belakang (daripada elemen dengan subskrip yang lebih kecil) Mulakan), bandingkan nilai elemen bersebelahan secara bergilir, dan tukarkannya jika tertib terbalik ditemui, supaya unsur-unsur dengan nilai yang lebih besar secara beransur-ansur bergerak dari depan ke belakang, sama seperti gelembung di bawah air, secara beransur-ansur meningkat ke atas.
Kerana semasa proses pengisihan, setiap elemen sentiasa menghampiri kedudukannya sendiri Jika
tidak ditukar dalam perbandingan, bermakna urutannya adalah teratur.
Ilustrasi proses algoritma isihan gelembung
Susun atur asal: 3, 9, -1, 10, 20
Pas pertama pengisihan
(1) 3, 9, -1, 10, 20 // Jika elemen bersebelahan dalam susunan terbalik, tukar
(2 ) 3, -1, 9, 10, 20
(3) 3, -1, 9, 10, 20
(4) 3, - 1, 9, 10, 20
Isih kedua
(1) -1, 3, 9, 10, 20 //Pertukaran
(2) -1, 3, 9, 10, 20
(3) -1, 3, 9, 10, 20
Tidak . , 20
(1) -1, 3, 9, 10, 20
Isih menggelegak ringkasan peraturan
(1) Lakukan jumlah saiz tatasusunan - 1 gelung besar
(2) Bilangan hantaran isihan semakin berkurangan
[3, -1, 9, -2, 10]
Keluarkan hasil isihan keduaimport java.util.Arrays; public class BubbleSort { public static void main(String[] args) { // TODO Auto-generated method stub int arr[]= {3,9,-1,10,-2}; //第i+1趟排序,将最大的数排在最后 int temp=0;//临时变量 for(int i=0;i<arr.length-1;i++) {//定义第几轮排序 for(int j=0;j<arr.length-1-i;j++) { if(arr[j+1]<arr[j]) { temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } System.out.println("输出第"+(i+1)+"趟排序的结果"); System.out.println(Arrays.toString(arr)); } } }
Output hasil isihan ketiga
[-1, -2, 3, 9, 10 ]Keluarkan hasil pengisihan ke-4Susun atur asal: 101, 34, 119, 1[-2, -1, 3, 9, 10]
Kaedah pengisihan pemilihan
Isih idea :
Pusingan pertama pengisihan: 1, 34, 119, 101
Pusingan kedua pengisihan: 1, 34, 119, 1012.1 Mula-mula andaikan nombor semasa ialah nombor terkecil
2.2 Kemudian bandingkan dengan setiap nombor berikutnya Jika didapati terdapat nombor yang lebih kecil daripada nombor semasa, tentukan semula nombor terkecil , dan dapatkan subskrip
Atas ialah kandungan terperinci Bagaimana untuk menulis kod untuk melaksanakan jenis gelembung dan jenis pemilihan dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!