Rumah > Artikel > pembangunan bahagian belakang > Apakah prinsip dan pelaksanaan algoritma isihan sisipan dalam PHP?
Prinsip dan pelaksanaan algoritma isihan sisipan dalam PHP
Isihan sisipan ialah algoritma pengisihan biasa ialah untuk memasukkan unsur ke dalam urutan yang telah disusun mengikut saiznya. Dalam PHP, kita boleh melaksanakan algoritma isihan sisipan melalui pertukaran berangka mudah. Artikel ini akan memperkenalkan prinsip dan pelaksanaan isihan sisipan secara terperinci, dan memberikan contoh kod khusus.
Prinsip:
Kaedah pelaksanaan:
Berikut ialah contoh kod untuk melaksanakan algoritma isihan sisipan dalam PHP:
function insertionSort($array) { $length = count($array); for ($i = 1; $i < $length; $i++) { $key = $array[$i]; $j = $i - 1; // 将当前元素与已排序序列中的元素比较,找到合适的插入位置 while ($j >= 0 && $array[$j] > $key) { $array[$j + 1] = $array[$j]; $j--; } $array[$j + 1] = $key; } return $array; } // 示例用法 $data = [4, 2, 7, 1, 9, 5]; $sortedData = insertionSort($data); print_r($sortedData);
Dalam kod di atas, fungsi insertionSort
menerima tatasusunan sebagai parameter dan mengembalikan yang disusun tatasusunan. Semasa proses pengisihan, kami menggunakan pembolehubah $key
untuk menyimpan elemen semasa yang hendak disisipkan Dalam setiap perbandingan, elemen yang lebih besar daripada elemen dalam urutan yang diisih dialihkan satu kedudukan ke kanan sehingga a yang sesuai didapati kedudukan sisipan. insertionSort
函数接受一个数组作为参数,并返回一个排序后的数组。在排序过程中,我们使用一个$key
变量保存当前待插入的元素,在每次比较中,将已排序序列中大于该元素的元素向右移动一位,直到找到合适的插入位置。
示例用法中,我们定义了一个待排序的数组$data
,并将其传递给insertionSort
函数。最后,通过print_r($sortedData)
$data
untuk diisih dan menghantarnya ke fungsi insertionSort
. Akhir sekali, cetak hasil yang diisih melalui print_r($sortedData)
.
Ringkasan:
Atas ialah kandungan terperinci Apakah prinsip dan pelaksanaan algoritma isihan sisipan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!