Rumah> Java> javaTutorial> teks badan

Tulis algoritma isihan pantas dalam Java untuk mengisih data

WBOY
Lepaskan: 2024-02-25 19:48:07
asal
591 orang telah melayarinya

Tulis algoritma isihan pantas dalam Java untuk mengisih data

Cara memanggil fungsi isihan pantas untuk mengisih data dalam Java memerlukan contoh kod khusus

Isih cepat ialah algoritma pengisihan yang biasa digunakan yang mempunyai kecekapan tinggi semasa memproses data berskala besar. Memanggil fungsi isihan pantas dalam Java untuk mengisih data boleh dilaksanakan secara rekursif. Perkara berikut akan memperkenalkan anda secara terperinci cara melakukan pengisihan pantas dalam Java dan memberikan contoh kod khusus.

Pertama, kita perlu memahami prinsip pengisihan pantas. Idea asas pengisihan cepat adalah untuk memilih elemen penanda aras dan membahagikan urutan untuk diisih kepada dua bahagian melalui satu laluan pengisihan Elemen dalam satu bahagian adalah lebih kecil daripada elemen penanda aras, dan elemen di bahagian yang lain adalah lebih besar daripada elemen penanda aras. Kedua-dua bahagian itu kemudiannya diisih secara rekursif sehingga keseluruhan urutan diisih.

Berikut ialah contoh kod isihan pantas dalam Java:

public class QuickSort { public void quickSort(int[] arr, int low, int high) { if (low < high) { int pi = partition(arr, low, high); quickSort(arr, low, pi - 1); quickSort(arr, pi + 1, high); } } public int partition(int[] arr, int low, int high) { int pivot = arr[high]; int i = (low - 1); for (int j = low; j < high; j++) { if (arr[j] < pivot) { i++; int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } int temp = arr[i + 1]; arr[i + 1] = arr[high]; arr[high] = temp; return i + 1; } public static void main(String[] args) { int[] arr = {10, 7, 8, 9, 1, 5}; int n = arr.length; QuickSort sorter = new QuickSort(); sorter.quickSort(arr, 0, n - 1); System.out.println("排好序的数组:"); for (int i : arr) { System.out.print(i + " "); } } }
Salin selepas log masuk

Dalam contoh di atas, kami mula-mula mentakrifkan kelas QuickSort dan mengisytiharkan kaedah quickSort dan partition di dalamnya. Kaedah isihan pantas quickSort menggunakan kaedah rekursif untuk membahagi tatasusunan kepada dua bahagian dengan memanggil kaedah sekatan, dan kemudian terus memanggil kaedah quickSort secara rekursif pada dua bahagian sehingga keseluruhan tatasusunan diisih. Kaedah partition digunakan untuk menentukan elemen asas dan meletakkan elemen yang lebih kecil daripada elemen asas di sebelah kiri elemen asas, dan elemen yang lebih besar daripada elemen asas di sebelah kanan elemen asas.

Dalam kaedah utama, kami mencipta arr tatasusunan yang mengandungi beberapa elemen yang tidak diisih dan menyerahkannya kepada kaedah quickSort untuk mengisih. Akhir sekali, kami menggunakan gelung untuk mencetak tatasusunan yang diisih.

Melalui contoh kod di atas, kita boleh memanggil fungsi isihan pantas dalam Java untuk mengisih data. Anda boleh mengubah suai dan melaraskan contoh ini untuk melaksanakan fungsi pengisihan yang lebih kompleks berdasarkan keperluan sebenar anda. Harap artikel ini membantu anda!

Atas ialah kandungan terperinci Tulis algoritma isihan pantas dalam Java untuk mengisih data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!