Rumah > Java > javaTutorial > teks badan

Bagaimana untuk menulis kod untuk melaksanakan jenis gelembung dan jenis pemilihan dalam java

王林
Lepaskan: 2023-04-20 12:55:12
ke hadapan
656 orang telah melayarinya

1. Isih gelembung

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

Isih keempat


(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) Jika kami mendapati tiada pertukaran berlaku dalam jenis tertentu, kami boleh menamatkan isihan gelembung lebih awal. Ini ialah hasil pengoptimuman


:


Keluaran hasil isihan pertama

[3, -1, 9, -2, 10]

Keluarkan hasil isihan kedua
import 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));
        }
     
        }
	}
Salin selepas log masuk
[-1, 3, -2, 9, 10]

Output hasil isihan ketiga

[-1, -2, 3, 9, 10 ]
Keluarkan hasil pengisihan ke-4

[-2, -1, 3, 9, 10]


Kaedah pengisihan pemilihan


Isih idea :

Susun atur asal: 101, 34, 119, 1

Pusingan pertama pengisihan: 1, 34, 119, 101

Pusingan kedua pengisihan: 1, 34, 119, 101


Pusingan ketiga isihan: 1, 34, 101, 119


Arahan:


1. Jumlah saiz tatasusunan pengisihan pilihan ialah - 1 pusingan pengisihan

2. >

2.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

  • 2.3 Apabila melintasi ke penghujung tatasusunan, kita mendapat nombor minimum dan subskrip pusingan ini

  • 2.4 Pertukaran [ Teruskan dalam kod]

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!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan