// 冒泡排序函数

function bubble_sort(& $array) {

$is_ordered = true; // 认为默认是有序的

$array_length = count($array);

$temp = 0;

// 进行数组排序

for ($i = 0; $i < $array_length -1; $i++) {

for ($j = 0; $j < $array_length -1 - $i; $j++) {

if ($array[$j] > $array[$j +1]) {

$temp = $array[$j];

$array[$j] = $array[$j +1];

$array[$j +1] = $temp;

$is_ordered = false; // 数组是无序的

}

}

// 判断是否可以结束数组的排序

if (!$is_ordered) {

$is_ordered = true; // 再次认为数组是有序的

} else {

break; // 此时数组是有序的,无需继续循环,跳出外层for循环。

}

}

}

// 数组打印函数

function print_array($array) {

foreach ($array as $key => $value) {

echo "\$array[$key] = $value
";

}

}

// 初始化数组

$array = array (

1,

-1,

3,

3,

2,

9,

-10,

7,

6,

5

);

// 调用函数

bubble_sort($array);

print_array($array);

/* 输出

$array[0] = -10

$array[1] = -1

$array[2] = 1

$array[3] = 2

$array[4] = 3

$array[5] = 3

$array[6] = 5

$array[7] = 6

$array[8] = 7

$array[9] = 9

*/

?>

php冒泡排序代码快速,php冒泡排序 代码相关推荐

  1. 在pycharm中自定义模板代码,快速输出固定代码块

    pycharm中有时会经常输出固定一段代码,为避免每次重复输入,可以自定义一段模板代码,请看以下图教程: 1.  点击 file   里面的   setting 2. 在搜索框输入live,就会显示出 ...

  2. 新手小白一行代码快速生成HTML代码块

    1.HTML下有head和body标签 html>head+body 2.HTML下有head和body,head下有title和meta html>head>title+meta^ ...

  3. RL强化学习算法90行代码快速实战 DQN代码分层讲解

    强化学习DQN算法介绍: DeepMind<Playing Atari with Deep Reinforcement Learning>提出了DQN ,DQN使用卷积神经网络作为价值函数 ...

  4. 冒泡排序c java c,冒泡排序,c语言冒泡排序法代码

    冒泡排序,c语言冒泡排序法代码 冒泡排序 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小.首字 ...

  5. 数据结构之冒泡排序算法(图解+分析+代码调优)

    文章目录 一.冒泡排序的介绍 二.图示冒泡排序全过程 三.冒泡排序图示小结 四.Java代码实现冒泡排序(优化前) 五.优化方法 六.Java代码实现冒泡排序(优化后) 七.测试冒泡排序是否正确 八. ...

  6. c语言选择冒泡排序,c语言选择冒泡排序讲解(附代码)

    c语言选择冒泡排序讲解(附代码) c语言选择冒泡排序讲解(附代码) 冒泡排序原理举例: 给定一组数 15 20 1 16 进行从大到小冒泡排序.第一次起泡的第一次比较:用15和20比较,若15比20小 ...

  7. c语言冒泡排序法代码(c语言冒泡排序法代码讲解)

    求一个C语言冒泡排序法的简单程序怎么办? 下一趟排序开始时,R[1..lastExchange-1]是有序区,R[lastExchange..n]是无序区.这样,一趟排序可能使当前有序区扩充多个记录, ...

  8. 冒泡排序原理详解及代码实现

    1.冒泡排序数组排序常用的一种方式,为什么要叫冒泡排序呢?这还要从它的原理说起. 2.代码实现(低效版) 3.原理详解:冒泡排序最基本的思想就是从左到右依次判断相邻的两个数的大小关系,如果前面的数大于 ...

  9. vue文件快速生成模板代码

    vue文件快速生成模板代码 输入 vue 按 tab 键

最新文章

  1. 在js中使用createElement创建HTML对象和元素_无需整理
  2. 【AI产品】你我当年的老照片,如今修复了可还行?
  3. CentOS7.2 部署Ceph分布式存储
  4. javascript --- 使用run函数,让100条ajax依次执行
  5. Linux下读取smBIOS源码,Linux下读取SMBIOS信息
  6. java.util.set cannot be assigned from null_Java中有关Null的9件事
  7. SWIFT学习笔记01
  8. 为什么要简化代码书写
  9. ***性测试是一种特殊的信息安全服务
  10. Python功能实现:为pdf电子书籍生成书签目录
  11. excel如何转化成word文件
  12. error occurred during initialization of VM报错解决
  13. from scipy.misc import comb ImportError: cannot import name comb
  14. 超好用的思维导图网站
  15. 网站权重8 的网站优化方案
  16. 不要以你的现状来判断你的未来—俞敏洪6月2号在同济大学的演讲
  17. 象棋棋谱xqf工具包 v2.02 绿色
  18. kafka查看消费情况
  19. Synaptic Strength For Convolutional Neural Network
  20. jquery竖向走马灯_jquery实现页面百叶窗走马灯式翻滚显示效果的方法_jquery

热门文章

  1. 让DNS服务器支持泛域名解析
  2. Vue使用v-for与v-if搭配满足条件进行赋值,和v-if三目表达式的使用
  3. SAP-BAPI物料主数据修改毛重净重
  4. WPF动态加载TabControl
  5. js/jquery 获取url传递参数,js获取url?号后面的参数(一个或多个)
  6. Linux【ubuntu】系统的文件夹结构与一些常识
  7. 卖表情包的LINE市值都超过87亿美元 微信应该值多少?
  8. 在html中怎样调节边框的长度,CSS边框长度控制功能的实现
  9. (腾讯云移动推送)华为推送:所有Token都不合法!
  10. 2008.5.19-5.21全国哀悼日