php常用的排序算法
来源:互联网 发布:网络推广的案例 编辑:程序博客网 时间:2024/06/05 12:39
php实现的许多的经典排序算法,这些算法可以经过一些改动用到更多的实际问题中,因为这些经典的算法有非常好的思想和逻辑在里面,这些都是及其值得学习和借鉴的。
当我们学习到了许多好的编程思想和逻辑,就能写出一些高性能的代码,一些复杂逻辑的功能就可以通过很巧妙和简洁的方法来实现。
/** * 使用递归实现字符串翻转 * @param $str 需要翻转的字符串 * return string */header('Content-Type:text/html;charset=utf-8');function reverse_r($str){ if(strlen($str)>0){ reverse_r(substr($str,1)); } echo substr($str,0,1); return;}echo "*******递归实现字符串翻转********************<br>";$str ='hello';$new_str = reverse_r($str);echo $new_str.'</br>';/** * 冒牌排序法 * @param array $arr; * return array */function arrSort($arr){ for ($i=0;$i<count($arr)-1;$i++) { for ($j=0;$j<count($arr)-1-$i;$j++)//这里减去$i 是因为我们循序结束就已经给一个数拍好了位置 下次循环的时候就不能为他排序了 { if ($arr[$j]>$arr[$j+1]) { $temp = $arr[$j]; $arr[$j] = $arr[$j+1]; $arr[$j+1] = $temp; } } } return $arr;}echo "*******冒泡排序********************<br>";$arr1= array(5,0,6,-2,-100,1);print_r(arrSort($arr1));echo '</br>';echo '</br>';/** * 选择排序法 * @param array $arr * return array */function selectSort($arr){ $temp=''; for ($i=0;$i<count($arr)-1;$i++) { $minVal = $arr[$i];//设置一个默认的最小值 $minIndex = $i; for ($j=$i+1;$j<count($arr);$j++) { if ($minVal>$arr[$j])//如果默认的最小值不是最小值,则改变默认最小值和它对应的下标 { $minVal = $arr[$j]; $minIndex = $j; } } //循环结束就找到了最小值 交换它的位置 $temp = $arr[$i]; $arr[$i] = $arr[$minIndex]; $arr[$minIndex] = $temp; } return $arr;}echo "*******选择排序********************<br>";$arr2 = array(14,3,2,1);print_r(selectSort($arr2));echo '</br>';echo '</br>';/** * 插入排序法 * @param array $arr * return array */function insertSort($arr){ for ($i=1;$i<count($arr);$i++) { $insertVal = $arr[$i];//待插入的值 $insertIndex = $i-1;//待比较的值的下标 while ($insertIndex>-1&&$insertVal<$arr[$insertIndex]) { $arr[$insertIndex+1] = $arr[$insertIndex]; $insertIndex--; } $arr[$insertIndex+1] = $insertVal; } return $arr;}echo "*******插入排序********************<br>";$arr = array(6,3,9,10,2,0,-100);$new_arr = insertSort($arr);print_r($new_arr);echo '</br>';echo '</br>';echo '</br>';
阅读全文
0 0
- php常用的排序算法
- php常用排序算法
- php常用排序算法
- php常用的四种排序算法
- php常用的四种排序算法
- php常用的四种排序算法
- PHP常用的排序和查找算法
- PHP关于常用的排序算法
- php常用的四种排序算法
- php常用我会的三种排序算法
- PHP常用排序算法 冒泡排序 快速排序 插入排序
- 常用的排序算法
- 常用的排序算法
- 常用的排序算法
- 常用的排序算法
- 常用的排序算法
- 常用的排序算法
- 常用的排序算法
- jarsperreport6.3输出带条码的html。
- 修改hosts上外网的方法
- 链式前向星初探
- 终端与作业控制
- 时间转化及应用
- php常用的排序算法
- 深入理解Spark 2.1 Core (七):Standalone模式任务执行的原理与源码分析
- android 不同主题下不同状态的button 动态改变文字和图片
- 常见的TCP定时器
- docker + harbor(centos7)+http
- Apache POI使用详解
- 如何使用Java实现简单的本地缓存?
- sublime 学习笔记之ubuntu下让sublime text 3成为默认编辑器
- selenium问题之点击的element被广告页挡住了