冒泡排序

/***
*从小到大排列* 逻辑分析    假设数组 $arr=[a,b,c,d];* 总数=4;*      比较对象  第几个元素  比较次数*       a          1          3*       b          2          2*       c          3          1**/function ele_sort($arr){$length=count($arr);if($length<2){return $arr;}for($i=0;$i<$length;$i++){for($j=$i+1;$j<$length;$j++){if($arr[$i]>$arr[$j]){$tmp=$arr[$j];$arr[$j]=$arr[$i];$arr[$i]=$tmp;}}}return $arr;}$arr1=[12,42,53,21,76865,86,43,1];
var_dump(ele_sort($arr1));

function bubble_sort($array){$count = count($array);if ($count <= 0) return false;for($i=0; $i<$count; $i++){for($j=$count-1; $j>$i; $j--){if ($array[$j] < $array[$j-1]){$tmp = $array[$j];$array[$j] = $array[$j-1];$array[$j-1] = $tmp;}}}return $array;} 

极速排序

function quick_sort($array)
{if (count($array) <= 1) return $array;$key = $array[0];$left_arr = array();$right_arr = array();for ($i = 1; $i < count($array); $i++) {if ($array[$i] <= $key)$left_arr[] = $array[$i];else$right_arr[] = $array[$i];}$left_arr = quick_sort($left_arr);$right_arr = quick_sort($right_arr);return array_merge($left_arr, array($key), $right_arr);
}
$arr1=[12,123,35,65,98,06,43,21,1,77];
$res=quick_sort($arr1);
var_dump($res);

转载于:https://www.cnblogs.com/huay/p/10367422.html

php算法,冒泡排序相关推荐

  1. 冒泡排序出现的问题_停课不停学 | 有趣的算法——冒泡排序

    停课不停学 有趣的算法--冒泡排序 01 生活中处处都有算法 每个人每天都会用到一些算法,算法也是人类使用计算机解决问题的技巧之一,但是算法并不是仅仅用于计算机领域中,包括在数学.物理甚至是每天的生活 ...

  2. C语言基础排序算法-冒泡排序

    C语言基础排序算法-冒泡排序 什么是冒泡排序? 顾名思义,这种排序方法就像水中的气泡一样,从底逐渐往上冒,一次前进一步.我们来看一个例子,看看到底是怎么冒泡的.假设有一个数组3,2,5,4,1,我们希 ...

  3. 经典排序算法 - 冒泡排序Bubble sort

    经典排序算法 - 冒泡排序Bubble sort 其原理是比较接近的数字22,按照从小到交换大或降序排列, 这样一趟过去后,最大或最小的数字被交换到了最后一位, 然后再从头開始进行两两比較交换,直到倒 ...

  4. JS数据结构与算法——冒泡排序(把大的数字依次往后放)

    一.图解排序过程 注意:比较次数和交换次数之所以不一致,是因为:比较了并不一定就需要交换两个数字的位置,比如比较 1 和 2两个数字,由于 后者本身就比前者大,所以不需要交换两者的位置. 二.代码实现 ...

  5. 排序算法-冒泡排序算法

    2019独角兽企业重金招聘Python工程师标准>>> 冒泡排序算法是所有排序算法中最简单.最基础的一种.冒泡排序算法的思路就是交换排序,通过相邻数据的交换来达到排序的目的. 冒泡排 ...

  6. 排序算法——冒泡排序(Bubble Sort)

    排序算法--冒泡排序(Bubble Sort) 算法简介(Introduction) Bubble sort is to compare adjacent elements of the list a ...

  7. C语言/Python经典算法冒泡排序

    C语言经典算法冒泡排序 #include "stdio.h" int main(){int a[10]={1,3,2,5,9,7,6,8,4,0};for (int i = 0; ...

  8. python排序算法 ——冒泡排序(附代码)

    python排序算法 --冒泡排序 文章目录 python排序算法 --冒泡排序 一.前言 二.算法描述 三.代码实现 总结 一.前言 相关知识来自<python算法设计与分析>.初级排序 ...

  9. 总结c语言基础算法——冒泡排序法和选择排序法

    1.首先无论何种排序方法其最终目的是按要求将所给数据进行排序.而在C语言中可以有很多排序的方法,这里着重介绍的是常用的较为基础和重要的算法--冒泡排序法和选择排序法. 下面将举一个例子进行讲解: 要求 ...

  10. Golang(二十一)[排序算法-冒泡排序]

    Golang-排序算法-冒泡排序 1.简介 2.原理 3.操作规则 4.Golang代码 1.升序 2.降序 3.测试 4.完整代码 5.优化 1.原冒泡排序 2.优化后 1.简介 冒泡排序(Bubb ...

最新文章

  1. 蓝桥杯国赛-大胖子走迷宫
  2. 使用Redis搭建电商秒杀系统
  3. AngularJS之Service(四)
  4. 本机Ajax异步通信
  5. 长江存储年底提供自研32层堆叠3D NAND闪存样品
  6. C语言试题五十二之学生的记录由学号和成绩组称个,n名大学生得数据已在主函数中放入结构体数组a中,请编写函数fun,它的功能时:按分数的高低排列学生的记录,高分在前。
  7. 解决undefined reference to symbol ‘sem_close@@GLIBC_2.2.5‘问题
  8. 试图登录,但是网络登陆服务没有启动成功
  9. LIBRARY_PATH和LD_LIBRARY_PATH
  10. 使用java库中的对称加密算法
  11. 微信开发第7章 通过accesstoken获取用户黑名单列表
  12. vue3.0 音频插件(vue-aplayer)
  13. 拓扑排序算法原理及Java代码实现
  14. C语言 | 编写一个简单的定时关机程序
  15. C语言 猜数游戏 首先由计算机产生一个随机数,并给出这个随机数所在的区间,然后有游戏者猜测这个数。猜中游戏结束,并可以重新挑战,猜错重新给出提示,如果猜测超过八次游戏失败。
  16. 5、依赖注入(DI)dependency injection
  17. 零基础该怎么去学游戏建模?
  18. Win10 无线网络802.1X认证 PEAP问题
  19. CUDA指定GPU的使用方法
  20. 【补充】Linux-2.6.22.6 makefiles.txt翻译

热门文章

  1. win服务器系统安装织梦,WindowsServer2012搭建PHP+MySQL環境安装DedeCMS系统_DedeCms教程.doc...
  2. 单片机数字温度计 c语言,【附源代码】30年来第1次调试好了一个单片机程序--数字温度计...
  3. 本文旨在通过对神经网络的原理,工作方式及其实现过程进行阐述和分析,探讨其在计算机视觉,自然语言处理,生物信息学等领域的应用及其发展趋势
  4. 缓存有效期和过期策略
  5. 三菱PLC梯形图识别方法有哪些?
  6. three.js使用超炫酷的鼠标跟随案例
  7. login4j的使用
  8. 记一次失败的直播抓取(包含相关知识点记录)
  9. 信息安全管理体系“裁判员”ISO/IEC 27001 Auditor审核员
  10. android系统粘贴弹框 点击,DialogFragment——解决PopupWindow中的输入框无法复制粘贴的问题;Android中的两种弹窗PopupWindow和Dialog的区别。...