热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP冒泡排序算法详解-PHP源码

在学习时我们经常会被老师拿几个数字来让大家进行各种排序,下面我来给各位同学介绍一下PHP冒泡排序算法,大家可直接合去给你老题师哈。
在学习时我们经常会被老师拿几个数字来让大家进行各种排序,下面我来给各位同学介绍一下PHP冒泡排序算法,大家可直接合去给你老题师哈。

排序实现过程如下:
49 38 65 97 76 13 27
38 49 65 97 76 13 27 比较第1个和第2个数,小的放前边,大的放后边 38 49 65 97 76 13 27 比较第2个和第3个数,小的放前边,大的放后边 38 49 65 97 76 13 27 比较第3个和第4个数,小的放前边,大的放后边 38 49 65 76 97 13 27 比较第4个和第5个数,小的放前边,大的放后边 38 49 65 76 13 97 27 比较第5个和第6个数,小的放前边,大的放后边 38 49 65 76 13 27 97 比较第6个和第7个数,小的放前边,大的放后边 至此,第一趟比较结束,得到以下排序: 38 49 65 76 13 27 97
然后按照第一趟排序的方法继续比较,直到完成排序。

列1

代码如下

$arr = array(345,4,17,6,52,16,58,69,32,8,234);
for($i=1;$i for($j=count($arr)-1;$j>=$i;$j--){
if($arr[$j]<$arr[$j-1]){
$temp = $arr[$j-1];
$arr[$j-1] = $arr[$j];
$arr[$j] = $temp;
}
}
}

列2

代码如下

/**
* php冒泡排序算法的实现
* @param array $array 一维数组
* @return array 排序过后的数组
*/
function bsort(array $array){
$count = count($array);
if($count == 0){
return array();
}elseif($count == 1){
return $array;
}elseif($count > 1){
for($i=0;$i<$count;$i++){
for($j=$count-1;$j>$i;$j--){
if($array[$j]<$array[$j-1]){
$temp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $temp;
}
}
}
return $array;
}else{
return false;
}
}

$arr = array(56,2,5,78,110,36,52,77,89,3,10);
print_r(bsort($arr));


推荐阅读
  • 本文对唐代诗人李白的《赠潘侍御论钱少阳》进行了深入的解析与翻译,旨在揭示诗中所蕴含的情感及历史背景。 ... [详细]
  • 解读基因集富集分析(GSEA)结果及应用
    本文详细介绍了基因集富集分析(Gene Set Enrichment Analysis, GSEA)的基本原理,以及如何通过GSEA分析结果来解析基因表达数据。此外,还提供了使用R语言进行GSEA分析的具体方法。 ... [详细]
  • 解析Java虚拟机HotSpot中的GC算法实现
    本文探讨了Java虚拟机(JVM)中HotSpot实现的垃圾回收(GC)算法,重点介绍了根节点枚举、安全点及安全区域的概念和技术细节,以及这些机制如何影响GC的效率和准确性。 ... [详细]
  • 如何高效地将CAJ文档转换为Word格式
    在学术研究和日常工作中,我们有时需要将特定的CAJ格式文档转换为更通用的Word格式。本文将详细介绍如何轻松实现这一转换,帮助用户快速掌握操作步骤。 ... [详细]
  • 贡献转移在计算每个元素的作用的时候,我们可以通过反向枚举作用效果,添加到作用元素的身上,这种方法叫做贡献转移。更正式的说, ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 春季职场跃迁指南:如何高效利用金三银四跳槽季
    随着每年的‘金三银四’跳槽高峰期的到来,许多职场人士都开始考虑是否应该寻找新的职业机会。本文将探讨如何制定有效的职业规划、撰写吸引人的简历以及掌握面试技巧,助您在这关键时期成功实现职场跃迁。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • 使用Matlab创建动态GIF动画
    动态GIF图可以有效增强数据表达的直观性和吸引力。本文将详细介绍如何利用Matlab软件生成动态GIF图,涵盖基本代码实现与高级应用技巧。 ... [详细]
  • 本文深入探讨了动态赋值的概念及其在编程实践中的应用,特别是通过Java代码示例来展示如何利用循环结构动态地为数组分配值。 ... [详细]
  • 在解决ACM竞赛题目或力扣挑战时,通常面临1秒到2秒的时间限制。为了确保程序能够高效运行,C++等语言的代码执行次数建议不超过1千万次。 ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • 变量间相关性分析
    本文探讨了如何通过统计方法评估两个变量之间的关系强度,重点介绍了皮尔森相关系数的计算及其应用。除了数学公式外,文章还提供了Python编程实例,展示如何利用实际数据集(如泰坦尼克号乘客数据)进行相关性检验。 ... [详细]
  • OpenCV中的霍夫圆检测技术解析
    本文详细介绍了如何使用OpenCV库中的HoughCircles函数实现霍夫圆检测,并提供了具体的代码示例及参数解释。 ... [详细]
  • 本文提供了一种有效的方法来解决当Android Studio因电脑意外重启而导致的所有import语句出现错误的问题。通过清除缓存和重建项目结构,可以快速恢复开发环境。 ... [详细]
author-avatar
wfy123
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有