zoukankan      html  css  js  c++  java
  • 逆序数组插入元素PHP实现

    PHP代码如下:

     1 <?php
     2 /**
     3  * 逆序二维数组插入一元素
     4  *
     5  * @author WadeYu
     6  * @date 2012-05-30
     7  */
     8 $aSorted = array(
     9     array(1, 100),
    10     array(2, 90),
    11     array(3, 80),
    12     array(4, 70),
    13     array(5, 60),
    14     array(6, 50),
    15     array(7, 40),
    16     array(8, 40),
    17     array(9, 40),
    18     array(10, 20),
    19 );
    20 $aInsert = array(11, 40);
    21 $maxCmpIdx = 0;
    22 $cnt = 0;
    23 $maxCnt = 10;
    24 foreach ($aSorted as $idx => $arr){
    25     if ($arr[0] == $aInsert[0]){
    26         $maxCmpIdx = $idx;
    27     }
    28     $cnt++;
    29 }
    30 if ( !$maxCmpIdx){
    31     $maxCmpIdx = $cnt++;
    32 }
    33 $aSorted[$maxCmpIdx] = $aInsert;
    34 for ($i = $maxCmpIdx; $i > 0; $i--){
    35     if ($aSorted[$i][1] > $aSorted[$i-1][1]){
    36         $aTmp = $aSorted[$i-1];
    37         $aSorted[$i-1] = $aSorted[$i];
    38         $aSorted[$i] = $aTmp;
    39         continue ;
    40     }
    41     break;
    42 }
    43 for ($i = $cnt; $i > $maxCnt; $i--){
    44     unset($aSorted[$i-1]);
    45 }
    46 print_r($aSorted);
  • 相关阅读:
    最短路径的三种实现方法
    c/c++小知识
    c++ char * const p问题
    C++ typedef 四个用途
    [转]c++面向对象基础
    [转]C++中引用(&)的用法和应用实例
    表情包。
    linux基础学习
    redis缓存在项目中的使用
    关于redis
  • 原文地址:https://www.cnblogs.com/wadeyu/p/2538099.html
Copyright © 2011-2022 走看看