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

时间:2022-08-30 08:40:17

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?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程序设计有所帮助。