許多人都說演算法是程式的核心,演算法的好壞決定了程式的質量。作為乙個初級phper,雖然很少接觸到演算法方面的東西。但是對於基本的排序演算法還是應該掌握的,它是程式開發的必備工具。下面通過本文給大家介紹php實現四種基礎排序演算法的執行時間比較,一起看下吧。
廢話不多說了,直接給大家貼**了。
具體**如下所示:
/*** php四種基礎排序演算法的執行時間比較
* @authors jesse ([email protected])
* @date 2016-08-11 07:12:14
*///氣泡排序法
function bubblesort($array)}}
}//選擇排序法
function selectsort($array)
}$temp = $array[$i];
$array[$i] = $array[$minvalindex];
$array[$minvalindex] = $temp;}}
//插入排序法
function insertsort($array)
if($insertindex + 1 !== $i)}}
//快速排序法
function quicksort($array)
$leftarray = quicksort($leftarray); //把比較小的陣列再一次進行分割
$leftarray = $mid; //把分割的元素加到小的陣列後面,不能忘了它哦
$rightarray = quicksort($rightarray); //把比較大的陣列再一次進行分割
return array_merge($leftarray,$rightarray); //組合兩個結果
}$a = array_rand(range(1,3000), 1600); //生成1600個元素的隨機數組
shuffle($a); //打亂陣列的順序
$t1 = microtime(true);
bubblesort($a); //氣泡排序
$t2 = microtime(true);
echo "氣泡排序用時:".(($t2-$t1)*1000).'ms'."\n";
$t3 = microtime(true);
selectsort($a); //選擇排序
$t4 = microtime(true);
echo "選擇排序用時:".(($t4-$t3)*1000).'ms'."\n";
$t5 = microtime(true);
insertsort($a); //插入排序
$t6 = microtime(true);
echo "插入排序用時:".(($t6-$t5)*1000).'ms'."\n";
$t7 = microtime(true);
quicksort($a); //快速排序
$t8 = microtime(true);
echo "快速排序用時:".(($t8-$t7)*1000).'ms';
以上所述是小編給大家介紹的php實現四種基礎www.cppcns.com排序演算法的執行時間比較,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們**的支援!
本文位址:
php四種基礎排序演算法
氣泡排序法 function bubblesort array 選擇排序法 function selectsort array temp array i array i array minvalindex array minvalindex temp 插入排序法 function insertsor...
四種排序演算法PHP實現類
四種排序演算法的php實現 1 插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。2 選擇排序 selection sort 的基本思想是 每一趟從待排序的記錄中選出關鍵字最小的記錄,順序放...
PHP實現四種基本排序演算法
許多人都說演算法是程式的核心,演算法的好壞決定了程式的質量。作為乙個初級phper,雖然很少接觸到演算法方面的東西。但是對於基本的排序演算法還是應該掌握的,它是程式開發的必備工具。這裡介紹氣泡排序,插入排序,選擇排序,快速排序四種基本演算法,分析一下演算法的思路。許多人都說演算法是程式的核心,演算法...