程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 排序算法篇--之簡單選擇排序,排序算法--

排序算法篇--之簡單選擇排序,排序算法--

編輯:關於PHP編程

排序算法篇--之簡單選擇排序,排序算法--


  簡單選擇排序,就是執行n-i次比較,然後從n-i+1個數據中選擇最小的值,如果最小值不是第i(1=<i<=n)個,則和第i個交換。

 1 <?php
 2     $arr = array(9,5,4,8,7,6,0,3,2,1);
 3     
 4     /**
 5      * 返回經過簡單選擇排序算法排序後的數組
 6      * @param $array array 要進行排序的數組
 7      * return array 進過排序後的數組
 8      */
 9     function SelectSort($array){
10         
11         for($i=0;$i<count($array);$i++){
12             
13             $min = $i; //設置當前下標為最小值下標
14             for($j=$i;$j<count($array);$j++){ //經過n-i次關鍵字比較
15             
16                 if($array[$min] > $array[$j]){
17                     $min = $j; //如果後續的值比當前值小,則把後續值的鍵賦給$min;
18                 }
19             }
20             
21             if($min != $i){ //判斷$min的值是否更改,若更改,則交換
22             
23                 $temp = $array[$min];
24                 $array[$min] = $array[$i];
25                 $array[$i] = $temp;
26             }
27         }
28         return $array;
29     }
30 
31     $result = SelectSort($arr);
32     echo '<pre>';
33     print_r($result);
34 ?>

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved