亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 邏輯算法 > 正文

PHP排序算法類實例

2020-03-22 16:33:58
字體:
來源:轉載
供稿:網友
本文實例講述了PHP排序算法類。分享給大家供大家參考。具體如下:四種排序算法的PHP實現:1) 插入排序(Insertion Sort)的基本思想是:
每次將一個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子文件中的適當位置,直到全部記錄插入完成為止。2) 選擇排序(Selection Sort)的基本思想是:
每一趟從待排序的記錄中選出關鍵字最小的記錄,順序放在已排好序的子文件的最后,直到全部記錄排序完畢。3) 冒泡排序的基本思想是:
兩兩比較待排序記錄的關鍵字,發現兩個記錄的次序相反時即進行交換,直到沒有反序的記錄為止。4) 快速排序實質上和冒泡排序一樣,都是屬于交換排序的一種應用。所以基本思想和上面的冒泡排序是一樣的。1. sort.php文件如下: * @author quanshuidingdanghtml' target='_blank'>class Sort { private $arr = array(); private $sort = 'insert'; private $marker = '_sort'; private $debug = TRUE; * 構造函數 * @param array 例如: $config = array ( 'arr' = array(22,3,41,18) , //需要排序的數組值 'sort' = 'insert', //可能值: insert, select, bubble, quick 'debug' = TRUE //可能值: TRUE, FALSE public function __construct($config = array()) { if ( count($config) 0) { $this- _init($config); * 獲取排序結果 public function display() { return $this- * 初始化 * @param array * @return bool private function _init($config = array()) { //參數判斷 if ( !is_array($config) OR count($config) == 0) { if ($this- debug === TRUE) { $this- _log("sort_init_param_invaild"); return FALSE; //初始化成員變量 foreach ($config as $key = $val) { if ( isset($this- $key)) { $this- $key = $val; //調用相應的成員方法完成排序 $method = $this- sort . $this- marker; if ( ! method_exists($this, $method)) { if ($this- debug === TRUE) { $this- _log("sort_method_invaild"); return FALSE; if ( FALSE === ($this- arr = $this- $method($this- arr))) return FALSE; return TRUE; * 插入排序 * @param array * @return bool private function insert_sort($arr) { //參數判斷 if ( ! is_array($arr) OR count($arr) == 0) { if ($this- debug === TRUE) { $this- _log("sort_array(insert)_invaild"); return FALSE; //具體實現 $count = count($arr); for ($i = 1; $i $count; $i++) { $tmp = $arr[$i]; for($j = $i-1; $j $j--) { if($arr[$j] $tmp) { $arr[$j+1] = $arr[$j]; $arr[$j] = $tmp; return $arr; * 選擇排序 * @param array * @return bool private function select_sort($arr) { //參數判斷 if ( ! is_array($arr) OR count($arr) == 0) { if ($this- debug === TRUE) { $this- _log("sort_array(select)_invaild"); return FALSE; //具體實現 $count = count($arr); for ($i = 0; $i $count-1; $i++) { $min = $i; for ($j = $i+1; $j $count; $j++) { if ($arr[$min] $arr[$j]) $min = $j; if ($min != $i) { $tmp = $arr[$min]; $arr[$min] = $arr[$i]; $arr[$i] = $tmp; return $arr; * 冒泡排序 * @param array * @return bool private function bubble_sort($arr) { //參數判斷 if ( ! is_array($arr) OR count($arr) == 0) { if ($this- debug === TRUE) { $this- _log("sort_array(bubble)_invaild"); return FALSE; //具體實現 $count = count($arr); for ($i = 0; $i $count; $i++) { for ($j = $count-1; $j $j--) { if ($arr[$j] $arr[$j-1]) { $tmp = $arr[$j]; $arr[$j] = $arr[$j-1]; $arr[$j-1] = $tmp; return $arr; * 快速排序 * @param array * @return bool private function quick_sort($arr) { //具體實現 if (count($arr) = 1) return $arr; $key = $arr[0]; $left_arr = array(); $right_arr = array(); for ($i = 1; $i count($arr); $i++){ if ($arr[$i] = $key) $left_arr[] = $arr[$i]; else $right_arr[] = $arr[$i]; $left_arr = $this- quick_sort($left_arr); $right_arr = $this- quick_sort($right_arr); return array_merge($left_arr, array($key), $right_arr); * 日志記錄 private function _log($msg) { $msg = 'date[' . date('Y-m-d H:i:s') . '] ' . $msg . '/n'; return @file_put_contents('sort_err.log', $msg, FILE_APPEND);/*End of file sort.php*//*Location htdocs/sort.php */2. sort_demo.php文件如下:require_once('sort.php');$config = array ( 'arr' = array(23, 22, 41, 18, 20, 12, 200303,2200,1192) , //需要排序的數組值 'sort' = 'select', //可能值: insert, select, bubble, quick 'debug' = TRUE //可能值: TRUE, FALSE$sort = new Sort($config);//var_dump($config['arr']);var_dump($sort- display());/*End of php*/希望本文所述對大家的php程序設計有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品99久久久久久久久| 成人免费淫片aa视频免费| 国产精品成人免费视频| 九九九热精品免费视频观看网站| www.99久久热国产日韩欧美.com| 亚洲成人激情在线观看| 欧美精品激情blacked18| 亚洲国产精品电影| 一区二区三区美女xx视频| 亚洲精品中文字幕有码专区| 久久精品影视伊人网| 日韩在线观看你懂的| 国产成人免费av| 亚洲第一中文字幕| 亚洲精品按摩视频| 一区二区三区回区在观看免费视频| 久久全国免费视频| 中文字幕欧美精品在线| 在线播放国产一区二区三区| 精品国模在线视频| 国产精品美女无圣光视频| 久久久欧美精品| 亚洲成人精品av| 日韩av片免费在线观看| 粗暴蹂躏中文一区二区三区| 成人激情视频免费在线| 91在线视频免费| 国产亚洲免费的视频看| www.久久久久久.com| 日韩精品视频在线观看网址| 久久国产精品久久精品| 日韩成人性视频| 亚洲精品一区二三区不卡| 国产精品亚洲美女av网站| 欧美高清电影在线看| 国产精品欧美日韩| 欧美成人精品一区二区三区| 色先锋资源久久综合5566| 一区二区欧美在线| 91精品久久久久久久久| 欧美剧在线观看| x99av成人免费| 隔壁老王国产在线精品| 亚洲精品免费网站| 亚洲春色另类小说| 亚洲欧美成人在线| 亚洲精品视频播放| 久久精品国产91精品亚洲| 日本精品一区二区三区在线| 欧美人与性动交a欧美精品| 孩xxxx性bbbb欧美| 欧美主播福利视频| 91在线视频免费| 欧美一级大片在线免费观看| 高清亚洲成在人网站天堂| 欧美中文字幕在线| 26uuu另类亚洲欧美日本一| 亚洲精品一区二三区不卡| 国产精品av网站| 欧美激情奇米色| 欧美片一区二区三区| 成人福利在线视频| 久久这里有精品| 日韩在线观看电影| 国产999精品久久久影片官网| 亚洲97在线观看| 国产日韩欧美自拍| 亚洲精品日韩久久久| 91九色国产视频| 国产原创欧美精品| 国产精品成久久久久三级| 欧美性在线观看| 亚洲自拍小视频免费观看| 欧美成人在线网站| 亚洲无限乱码一二三四麻| 成人午夜在线视频一区| 91精品视频观看| 正在播放亚洲1区| 国产拍精品一二三| 国产有码在线一区二区视频| 亚洲精品久久久久久久久久久久久| xxxxx91麻豆| 亚洲精品成a人在线观看| 亚洲精品国产免费| 亚洲国产精品va在线看黑人| 国产97在线|日韩| 亚洲精品美女在线| 成人欧美一区二区三区黑人孕妇| 91精品国产精品| 在线看日韩av| 亚洲国产成人91精品| 国产精品美女免费视频| 久久久久久久久久国产| 红桃av永久久久| 欧美极品少妇xxxxⅹ免费视频| 91精品国产91久久久久久| 国内精品在线一区| 国产一区二区视频在线观看| 亚洲精品国产综合久久| 亚洲精品v欧美精品v日韩精品| 欧美高跟鞋交xxxxxhd| 九色91av视频| 日韩欧美综合在线视频| 欧美激情综合色综合啪啪五月| 日韩欧美精品在线观看| 狠狠干狠狠久久| 久久精品国产成人| 欧美性极品xxxx娇小| 欧美亚洲伦理www| 欧美大片va欧美在线播放| 亚洲成色www8888| 亚洲美女av电影| 成人午夜在线观看| 欧美一级片久久久久久久| 日韩暖暖在线视频| 亚洲天堂精品在线| 国产一区二区美女视频| 日韩欧美一区二区三区| 国产性猛交xxxx免费看久久| 日韩在线小视频| 国产在线观看精品| 国产精品精品视频一区二区三区| 亚洲图片在线综合| 精品久久香蕉国产线看观看亚洲| 黑人巨大精品欧美一区二区免费| 热久久视久久精品18亚洲精品| 奇米四色中文综合久久| 久久久91精品国产一区不卡| 午夜精品在线视频| 一区二区三区四区精品| 一个人看的www欧美| 成人a视频在线观看| 亚洲影院在线看| 在线亚洲男人天堂| 欧美最近摘花xxxx摘花| 在线观看欧美日韩国产| 日韩成人网免费视频| 亚洲人成网站777色婷婷| 国产精品网红直播| 91久久久久久久久久久久久| 亚洲国产精品字幕| 欧美裸体xxxx极品少妇软件| 免费91麻豆精品国产自产在线观看| 欧美激情在线视频二区| 亚洲xxxx在线| 亚洲美女精品成人在线视频| 日韩国产精品一区| 美女av一区二区三区| 亚洲自拍av在线| 日韩欧美中文在线| 日韩精品免费在线视频观看| www.国产精品一二区| 成人在线精品视频| 亚洲人成欧美中文字幕| 亚洲免费人成在线视频观看| 在线精品91av| 久久久亚洲影院| 热久久这里只有精品| 黄色成人在线免费| 国产一区二区三区在线观看网站| 中文亚洲视频在线| 色综合天天狠天天透天天伊人| 国产精品久久久久久久久久新婚| 久久久久久久久久久av|