Rumah masalah biasa 归并排序有什么用

归并排序有什么用

Jun 30, 2020 am 09:41 AM
merge sort

归并排序是建立在归并操作上的一种有效的排序算法,可用于对总体无序,但是各子项相对有序的数列,以及求逆序对数,其具体思路是在归并的过程中计算每个小区间的逆序对数,进而计算出大区间的逆序对数。

归并排序有什么用

归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。归并排序是一种稳定的排序方法。

用途

排序

(速度仅次于快速排序,为稳定排序算法,一般用于对总体无序,但是各子项相对有序的数列,应用见2011年普及复赛第3题“瑞士轮”的标程)

求逆序对数

具体思路是,在归并的过程中计算每个小区间的逆序对数,进而计算出大区间的逆序对数(也可以用树状数组来求解)

Atas ialah kandungan terperinci 归并排序有什么用. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Program C/C++ yang ditulis menggunakan algoritma isihan gabungan untuk mengira nombor terbalik dalam tatasusunan Program C/C++ yang ditulis menggunakan algoritma isihan gabungan untuk mengira nombor terbalik dalam tatasusunan Aug 25, 2023 pm 07:33 PM

Perwakilan terbalik tatasusunan; berapa banyak perubahan yang diperlukan untuk menukar tatasusunan ke dalam bentuk yang diisih. Apabila tatasusunan sudah diisih, 0 pembalikan diperlukan, manakala dalam kes lain, jika tatasusunan diterbalikkan, bilangan pembalikan maksimum akan dicapai. Untuk menyelesaikan masalah ini, kami akan mengikuti kaedah isihan gabungan untuk mengurangkan kerumitan masa dan menggunakan algoritma bahagi dan takluk. Input Asequenceofnumbers.(1,5,6,4,20 Output bilangan pembalikan yang diperlukan untuk mengisih nombor dalam tertib menaik). Nomborofinversi adalah2.Versi Pertama:(1,5,4,6,20)Penukaran Kedua:(1,4,5,6,20)gabungan algoritma

Bagaimana untuk melaksanakan pengisihan gabungan dalam php Bagaimana untuk melaksanakan pengisihan gabungan dalam php Oct 21, 2022 am 09:30 AM

Cara melaksanakan pengisihan gabungan dalam PHP: 1. Cipta fail contoh PHP 2. Tentukan kaedah "pengendali fungsi awam(){...}" 3. Gunakan "fungsi peribadi mergeSort($a, $lo, $hi )" {...}" kaedah untuk menguraikan data secara beransur-ansur 4. Gunakan kaedah "cantum" untuk mengisih data yang terurai dan kemudian menggabungkannya bersama-sama.

Penjelasan terperinci tentang algoritma isihan gabungan dalam PHP Penjelasan terperinci tentang algoritma isihan gabungan dalam PHP Jul 08, 2023 pm 05:03 PM

Penjelasan terperinci tentang algoritma isihan gabungan dalam PHP Pengenalan: Isih ialah salah satu masalah asas yang biasa dalam sains komputer Susunan data yang teratur boleh meningkatkan kecekapan operasi cari semula, carian dan pengubahsuaian. Antara algoritma pengisihan, isihan gabungan ialah algoritma yang sangat cekap dan stabil. Artikel ini akan memperkenalkan algoritma isihan gabungan dalam PHP secara terperinci, dengan contoh kod. Prinsip Merge Sort Merge sort ialah algoritma bahagi-dan-takluk yang membahagikan tatasusunan untuk diisih kepada dua sub-tatasusunan, melaksanakan isihan cantum masing-masing pada dua sub-tatasusunan, dan kemudian menggabungkan sub-tatasusunan yang diisih menjadi satu

Bagaimana untuk melaksanakan algoritma pengisihan gabungan dalam C# Bagaimana untuk melaksanakan algoritma pengisihan gabungan dalam C# Sep 19, 2023 am 09:45 AM

Cara melaksanakan algoritma pengisihan gabungan dalam isihan C# Merge ialah algoritma pengisihan klasik berdasarkan idea bahagi-dan-takluk Ia menyelesaikan pengisihan dengan membahagikan masalah besar kepada berbilang masalah kecil, kemudian secara beransur-ansur menyelesaikan masalah kecil dan menggabungkan hasilnya. Berikut akan memperkenalkan cara melaksanakan algoritma isihan gabungan dalam C# dan memberikan contoh kod khusus. Idea asas pengisihan gabungan adalah untuk membahagikan urutan untuk diisih kepada berbilang urutan, mengisihnya secara berasingan, dan kemudian menggabungkan urutan yang diisih ke dalam urutan yang tersusun. Kunci kepada algoritma ini adalah untuk melaksanakan operasi pemisahan dan penggabungan bagi urutan.

Bagaimana untuk melaksanakan algoritma pengisihan gabungan menggunakan java Bagaimana untuk melaksanakan algoritma pengisihan gabungan menggunakan java Sep 19, 2023 am 11:33 AM

Cara menggunakan Java untuk melaksanakan algoritma pengisihan gabungan Pengenalan: Isih gabungan ialah algoritma pengisihan klasik berdasarkan kaedah bahagi dan takluk Ideanya adalah untuk membahagikan tatasusunan untuk diisih ke dalam sub-tatasusunan lapisan demi lapisan, dan kemudian menggabungkannya. sub-tatasusunan dalam urutan melalui operasi cantumkan ke dalam tatasusunan keseluruhan yang diisih. Dalam artikel ini, kami akan memperkenalkan secara terperinci cara melaksanakan algoritma isihan gabungan menggunakan Java dan memberikan contoh kod khusus. Langkah-langkah algoritma: Algoritma isihan gabungan terutamanya merangkumi tiga langkah: pemisahan, penggabungan dan pengisihan. Split: Pertama, kita perlukan

Bagaimana untuk menggunakan kaedah bahagi dan takluk untuk melaksanakan algoritma isihan gabungan dalam PHP dan meningkatkan kecekapan pengisihan? Bagaimana untuk menggunakan kaedah bahagi dan takluk untuk melaksanakan algoritma isihan gabungan dalam PHP dan meningkatkan kecekapan pengisihan? Sep 19, 2023 pm 02:10 PM

Bagaimana untuk menggunakan kaedah bahagi dan takluk untuk melaksanakan algoritma isihan gabungan dalam PHP dan meningkatkan kecekapan pengisihan? Merge sort ialah algoritma pengisihan yang cekap Ia menggunakan idea kaedah bahagi dan takluk untuk membahagikan tatasusunan untuk diisih kepada dua bahagian, masing-masing mengisih dua sub-tatasusunan, dan kemudian menggabungkan dua sub-tatasusunan menjadi satu. susunan tersusun. Isih gabungan boleh mengubah tatasusunan yang tidak diisih menjadi tatasusunan tertib secara stabil dengan memecahkan masalah secara berterusan kepada sub-masalah yang lebih kecil dan menggabungkan penyelesaian kepada sub-masalah tersebut. Dalam PHP, laksanakan algoritma pengisihan gabungan dan tingkatkan kecekapan pengisihan

Gabungkan Algoritma Isih dalam Java: Prinsip dan Aplikasi Praktikal Gabungkan Algoritma Isih dalam Java: Prinsip dan Aplikasi Praktikal Feb 18, 2024 pm 03:17 PM

Penjelasan terperinci tentang algoritma pengisihan gabungan dan aplikasinya dalam Java 1. Pengenalan Isih gabungan ialah algoritma pengisihan klasik Ia menggunakan idea ​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ untuk membahagikan tatasusunan kepada dua sub-tatasusunan, kemudian menyusun sub-sub secara rekursif. -arrays, dan akhirnya menggabungkan dua subarray yang diisih digabungkan menjadi satu tatasusunan yang disusun. Artikel ini akan menganalisis algoritma isihan gabungan dan aplikasinya dalam Java secara terperinci, dan memberikan contoh kod khusus. 2. Prinsip Algoritma Idea utama pengisihan gabungan adalah untuk membahagikan tatasusunan besar kepada dua sub-tatasusunan, menyusun dua sub-tatasusunan masing-masing, dan akhirnya menggabungkan kedua-dua susunan itu.

Cari pilih atur yang membawa kepada senario kes terburuk jenis gabungan dalam C Cari pilih atur yang membawa kepada senario kes terburuk jenis gabungan dalam C Aug 28, 2023 pm 04:09 PM

Konsep: Untuk set elemen tertentu, tentukan susunan yang akan membawa kepada senario terburuk jenis gabungan? Kami tahu bahawa secara asimptotik, isihan gabungan sentiasa mengambil masa O(nlogn), tetapi dalam amalan, kes yang memerlukan lebih banyak perbandingan biasanya mengambil lebih banyak masa. Sekarang kita pada asasnya perlu menentukan susunan elemen input yang memaksimumkan bilangan perbandingan apabila melaksanakan algoritma isihan gabungan biasa. Contoh Pertimbangkan set elemen berikut sebagai tatasusunan yang diisih 11121314151617181920212223242526 Tatasusunan input kes terburuk yang menghasilkan isihan gabungan ialah 11191523132117251220162414221826 Kaedah Kami mengkaji bagaimana untuk