php判断一个数组是否为有序的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php判断一个数组是否为有序的方法。分享给大家供大家参考。具体分析如下:

这段代码的时间复杂度为O(n)

<?php 
function JudegSortArray($array) {
  if ($array [0] > $array [1]) {
    $flag = 1;
  } else {
    $flag = 0;
  }
  $temp = $flag;
  $len = count ( $array );
  for($i = 1; $i < $len; $i ++) {
    if ($flag == 0) {
      if ($array [$i] < $array [$i + 1])
      {
        continue;
      } else {
        $flag = 1;
        break;
      }
    }
    if ($flag == 1) {
      if ($array [$i] > $array [$i + 1]) {
        continue;
      } else
      {
        $flag = 0;
        break;
      }
    }
  }
  if ($flag != $temp) {
    echo "无序数组";
  } else {
    echo "有序数组";
  }
}
// 测试用例
$array = array (
    1,
    2,
    3,
    4,
    6,
    5
);
$ret = JudegSortArray ( $array );
echo $ret;

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

相关文章

PHP array操作10个小技巧分享

1、向array中添加元素 php是一个弱类型语言。因此不必象c语言那样为php array声明长度。向其中添加元素的过程也是声明和初始化的过程。 复制代码 代码如下: $capital...

php下保存远程图片到本地的办法

今天在整理资料的时候发现以前找到的一个函数,通过这个函数我们就可以实现上面的功能。 主要函数: 复制代码 代码如下: function GrabImage($url,$filename=...

php文件缓存类汇总

本文实例讲述了php的文件缓存类。分享给大家供大家参考。具体分析如下: 缓存类是我们开发应用中会常用使用到的功能,下面就来给大家整理几个php文件缓存类了,各个文件缓存类写法不同,但在性...

php单态设计模式(单例模式)实例

单态设计模式也叫单例模式: 1.单态设计模式含义: 单态模式的主要作用是保证在面向对象编程设计中,一个类只能有一个实例对象存在。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且...

smarty的保留变量问题

以下是访问页面请求变量诸如get,post,cookies,server,enviroment和session变量的例子. 例如{$smarty.server.SERVER_NAME}取...