PHP算法:冒泡排序与快速排序

写一个排序算法,可以是冒泡排序或者快速排序,假设待排序对象是一个二维数组。(提示:不能使用系统已有函数,另外请仔细回忆以前学习过的基础知识)

1//冒泡排序<br> 2function bubble_sort($array){&nbsp; &nbsp; <br> 3 $count = count($array);&nbsp; &nbsp; <br> 4 if ($count <= 0) return false;

&nbsp; &nbsp; <br> 5 for($i=0; $i<$count; $i++){&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br> 6 for($j=$count-1; $j>$i; $j--){&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br> 7 if ($array[$j] < $array[$j-1]){&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <br> 8 $tmp = $array[$j];&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <br> 9 $array[$j] = $array[$j-1];&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <br> 10 $array[$j-1] = $tmp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<br> 11 }&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<br> 12 }&nbsp; &nbsp; <br> 13 }&nbsp; &nbsp; <br> 14 return $array;<br> 15}
点赞
收藏

评论区

加载中...

相关推荐

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

最新美团点评Java团队面试题,感悟分享

1.笔试常见的问题?面试常见的问题上面给的面试题链接基本都有。我只提几点:1.写SQL:写SQL很常考察groupby、内连接和外连接。2.手写代码:手写代码一般考单例、排序、线程、消费者生产者。我建议排序算法除了冒泡排序,最好还能手写一种其他的排序代码。试想:如果一般面试者都写的冒泡排序,而你写的是快速排序/堆排序,肯定能给面试官留下不错的印象。

排序算法(冒泡、快速、插入)

稳定性:排序前后相等的元素位置是否会被交换。冒泡排序strcpy只能拷贝字符串,整型或浮点型数组需要用memcpy。memcpy称为内存拷贝接口,可以将某一段连续的内存放入另一段连续的内存中。在使用随机数的代码中使用固定的数组有利于调试。:::tipmem

java中几种排序的实现

1.最简单的冒泡排序/\\\冒泡排序\/publicstaticvoidbubbleSort(){int\\arr{5,8,1,2,9,8,7,4};System.out.println("排序前的数组为:");for(intnum:arr){System.o

【排序算法动画解】简单选择排序

本文为系列专题的第13篇文章。1.2.3.4.5.6.7.8.9.10.11.12.在文章【】中,我们介绍了暴力排序和冒泡排序这两种排序算法,算是一个引子。同时指出暴力排序和冒泡排序的缺点硬伤。本文介绍的简单选择排序则“医治”了上面提到的暴力排序和冒泡排序的“硬伤”。核心思想:从数组的第一个元素开始,将其作为基准元素,然后找出基准

JS 对象数组Array 根据对象object key的值排序sort,很风骚哦

有个js对象数组varary\{id:1,name:"b"},{id:2,name:"b"}\需求是根据name或者id的值来排序,这里有个风骚的函数函数定义:function keysrt(key,desc) {  return function(a,b){    return desc ? ~~(ak

PHP算法:冒泡排序与快速排序 - HelloWorld