Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP如何实现插入排序?

PHP如何实现插入排序?

藏色散人
藏色散人asal
2019-03-06 14:14:073938semak imbas

插入排序是一种简单的排序算法,可以一次构建最终排序的数组(或列表)。与大多数高级算法(如快速排序,堆栈或合并排序)相比,它在大型列表上的效率要低得多。

PHP如何实现插入排序?

插入排序的图形示例:

Insertion-sort-animation.gif

PHP插入排序的代码示例如下:

<?php

function insertion_Sort($my_array)
{
    for($i=0;$i<count($my_array);$i++){
        $val = $my_array[$i];
        $j = $i-1;
        while($j>=0 && $my_array[$j] > $val){
            $my_array[$j+1] = $my_array[$j];
            $j--;
        }
        $my_array[$j+1] = $val;
    }
    return $my_array;
}
$test_array = array(3, 0, 2, 5, -1, 4, 1);
echo "原始数组:\n";
echo implode(&#39;, &#39;,$test_array );
echo "\n排序后数组 :\n";
print_r(insertion_Sort($test_array));

输出:

原始数组: 3, 0, 2, 5, -1, 4, 1 
排序后数组 : 
Array ( 
[0] => -1 
[1] => 0 
[2] => 1 
[3] => 2 
[4] => 3 
[5] => 4 
[6] => 5 
)

相关推荐:《PHP教程

本篇文章就是关于PHP插入排序的方法介绍,希望对需要的朋友有所帮助!

Atas ialah kandungan terperinci PHP如何实现插入排序?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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