PHP

PHP 数组(Array) - 排序算法

2020-04-27  本文已影响0人  887d1fc86fe6
<?php
  $info1 = ['dzm', 18, '男'];
  $info2 = ['name'=>'dzm', 'age'=>18, 'gender'=>'男'];

  echo in_array('男', $info1); // 1
  echo array_search('男', $info1); // 2
  echo array_search('男1', $info1); // bool(false)
  echo array_key_exists(0, $info1); // bool(true)
?>
<?php
  $arr = array(
    'a' => 3,
    'b' => 12,
    'c' => 4,
    'd' => 20,
    'e' => 22,
    'f' => 30
  );
  
  // 默认输出
  print_r($arr);

  // 排序 sort() 由低到高
  sort($arr);
  print_r($arr); // Array ( [0] => 3 [1] => 4 [2] => 12 [3] => 20 [4] => 22 [5] => 30 )

  // 排序 rsort() 由高到低
  rsort($arr);
  print_r($arr); // Array ( [0] => 30 [1] => 22 [2] => 20 [3] => 12 [4] => 4 [5] => 3 )
?>

<?php
// 数组
$arr = [18, 22, 12, 15, 23, 9];
// 数组长度
$n = count($arr);
// 需要比较几趟
for ($i = 0; $i < $n - 1; $i++) { 
  // 在每一趟一里面,需要进行比较几次
  for ($k = 0; $k < $n - 1 - $i; $k++) { 
    // 进行比较, 如果前面的大于后面的,就需要进行交换位置
    if ($arr[$k] > $arr[$k + 1]) {
      $temp = $arr[$k];
      $arr[$k] = $arr[$k + 1];
      $arr[$k + 1] = $temp;
    }else{
      // 如果小于,则不用做处理
    }
  }
}
// 输出
print_r($arr); // Array ( [0] => 9 [1] => 12 [2] => 15 [3] => 18 [4] => 22 [5] => 23 )
?>
上一篇 下一篇

猜你喜欢

热点阅读