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

yipeiwu_com7年前PHP代码库

本文实例讲述了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数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

相关文章

PHP人民币金额转大写实例代码

PHP人民币金额转大写,其实质就是数字转换成中文大写,测试了一下,非常有趣,随便输个数字,就可以将其大写打印出来,初学的朋友们试一下吧 //PHP人民币金额转大写 class Ext...

PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法

本文实例讲述了PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法。分享给大家供大家参考。具体分析如下: 语法如下: string gmdate (string...

PHP IN_ARRAY 函数使用注意事项

另外,我们在 控制结构比较两个数值是否一直的时候,也应该尽量使用 === 来代替 ==(当然,这个也根据具体的业务逻辑选用比较合适的)。 小弟来解释下 为什么 var_dump(in_a...

PHP实现指定字段的多维数组排序函数分享

PHP数组排序可以用array_multisort方法实现,但是如果是多维数组,并且我们要指定数组中的某个字段进行排序,那么这就需要我们自己写方法实现了。本文分享了一段PHP指定字段的多...

php中注册器模式类用法实例分析

本文实例讲述了php中注册器模式类用法。分享给大家供大家参考,具体如下: 注册器读写类 Registry.class.php <?php /** * 注册器读写类...