PHP简单实现冒泡排序的方法


Posted in PHP onDecember 26, 2016

本文实例讲述了PHP简单实现冒泡排序的方法。分享给大家供大家参考,具体如下:

<?php
$files = array("file11.txt","file22.txt","file1.txt","file2.txt");
function mySort($arr,$nat=false) {
    for($i=0;$i<count($arr);$i++) {
      for($j=0;$j<count($arr)-$i-1;$j++) {
        if($nat) {
          //按照strnatcmp()自然排序函数
          if(strnatcmp($arr[$j], $arr[$j+1])>0) {
            $tmp = $arr[$j];
            $arr[$j] = $arr[$j+1];//从小到大排
            $arr[$j+1] = $tmp;
          }
        } else {
          //按照strcmp()自然排序函数
          if(strcmp($arr[$j], $arr[$j+1])>0) {
            $tmp = $arr[$j];
            $arr[$j] = $arr[$j+1];//从小到大排
            $arr[$j+1] = $tmp;
          }
        }
      }
    }
    return $arr;
}
//Array ( [0] => file1.txt [1] => file11.txt [2] => file2.txt [3] => file22.txt )
print_r(mySort($files,false));
echo "<br/>";
//2<11
//Array ( [0] => file1.txt [1] => file2.txt [2] => file11.txt [3] => file22.txt )
print_r(mySort($files,true));
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
虚拟主机中对PHP的特殊设置
Oct 09 PHP
PHP分页显示制作详细讲解
Nov 19 PHP
UCenter Home二次开发指南
May 28 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
Apr 07 PHP
Linux中为php配置伪静态
Dec 17 PHP
php微信公众平台开发类实例
Apr 01 PHP
举例详解PHP脚本的测试方法
Aug 05 PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
Jun 10 PHP
php 猴子摘桃的算法
Jun 20 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
TP5(thinkPHP框架)实现后台清除缓存功能示例
May 29 PHP
4种Windows系统下Laravel框架的开发环境安装及部署方法详解
Apr 06 PHP
php mysql操作mysql_connect连接数据库实例详解
Dec 26 #PHP
PHP常用函数总结(180多个)
Dec 25 #PHP
详解EventDispatcher事件分发组件
Dec 25 #PHP
php 反斜杠处理函数addslashes()和stripslashes()实例详解
Dec 25 #PHP
PHP实现的文件操作类及文件下载功能示例
Dec 24 #PHP
PHP文件与目录操作示例
Dec 24 #PHP
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
Dec 24 #PHP
You might like
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
php变量与数组相互转换的方法(extract与compact)
2016/12/02 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
2012/02/03 Javascript
我的NodeJs学习小结(一)
2014/07/06 NodeJs
JavaScript中遍历对象的property的3种方法介绍
2014/12/30 Javascript
jQuery插件slides实现无缝轮播图特效
2015/04/17 Javascript
js获取form的方法
2015/05/06 Javascript
jquery实现二级导航下拉菜单效果
2015/12/18 Javascript
JS组件Form表单验证神器BootstrapValidator
2016/01/26 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
详解nodejs异步I/O和事件循环
2017/06/07 NodeJs
JavaScript基础心法 数据类型
2018/03/05 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
ES6 Object属性新的写法实例小结
2019/06/25 Javascript
[01:09]DOTA2次级职业联赛 - ishow.HMM战队宣传片
2014/12/01 DOTA
python3新特性函数注释Function Annotations用法分析
2016/07/28 Python
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
2018/01/09 Python
python获取txt文件词向量过程详解
2019/07/05 Python
python删除文件夹下相同文件和无法打开的图片
2019/07/16 Python
python ctypes库2_指定参数类型和返回类型详解
2019/11/19 Python
简单了解为什么python函数后有多个括号
2019/12/19 Python
python中的逆序遍历实例
2019/12/25 Python
通过python连接Linux命令行代码实例
2020/02/18 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
流动人口婚育证明范本
2014/09/26 职场文书
升学宴答谢词
2015/01/05 职场文书
Win11 引入 Windows 365 云操作系统,适应疫情期间混合办公模式:启动时直接登录、模
2022/04/06 数码科技
浅谈Python中对象是如何被调用的
2022/04/06 Python