PHP基础算法
Posted 宸晓闹儿06
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP基础算法相关的知识,希望对你有一定的参考价值。
需求:分别用 冒泡排序法,快速排序法,选择排序法,插入排序法,归并排序将下面数组中 的值按照从小到大的顺序进行排序。
$arr=array(11,3,56,62,21,66,32,78,36,76,39,88,34);
冒泡排序(Bubble Sort)
算法原理:是一种简单的排序算法。它重复地走访过要排序的数列,依次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
代码实现:
$arr = [1, 43, 54, 62, 21, 66, 32, 78, 36, 76, 39, 2]; //冒泡排序 function bubbleSort($arr) { $len = count($arr); //该层循环控制 需要冒泡的轮数 for ($i = 1; $i < $len; $i++) { //该层循环用来控制每轮 冒出一个数 需要比较的次数 for ($k = 0; $k < $len - $i; $k++) { if ($arr[$k] > $arr[$k + 1]) { //从小到大 < || 从大到小 > $tmp = $arr[$k + 1]; // 声明一个临时变量 $arr[$k + 1] = $arr[$k]; $arr[$k] = $tmp; } } } return $arr; } $arr = bubbleSort($arr); print_r($arr);
以上是关于PHP基础算法的主要内容,如果未能解决你的问题,请参考以下文章