谋求最优的计算方法
程序员文章站
2022-06-01 22:16:29
...
寻求最优的计算方法
寻求最优的计算数组方法,实在搞不出来了
我有两个数组分别是:
首先查找$arr2的pos在$arr1中的所有数组的pos中的顺序位置,如果顺序位置一致则按照id倒序获取位置
如上面的代码则应该获取的结果为:$arr2位于$arr1的
之上
------解决方案--------------------
寻求最优的计算数组方法,实在搞不出来了
我有两个数组分别是:
- PHP code
$arr1=array( array( 'id'=>1, 'pos'=>1 ), array( 'id'=>2, 'pos'=>2 ), array( 'id'=>3, 'pos'=>3 ), array( 'id'=>4, 'pos'=>4 ), array( 'id'=>5, 'pos'=>5 ), array( 'id'=>6, 'pos'=>6 ), ) $arr2=array( 'id'=>7, 'pos'=>4 )
首先查找$arr2的pos在$arr1中的所有数组的pos中的顺序位置,如果顺序位置一致则按照id倒序获取位置
如上面的代码则应该获取的结果为:$arr2位于$arr1的
- PHP code
array( 'id'=>4, 'pos'=>4 ),
之上
------解决方案--------------------
- PHP code
1, 'pos'=>1 ), array( 'id'=>2, 'pos'=>2 ), array( 'id'=>3, 'pos'=>3 ), array( 'id'=>4, 'pos'=>4 ), array( 'id'=>5, 'pos'=>5 ), array( 'id'=>6, 'pos'=>6 ), ); $arr2=array( 'id'=>7, 'pos'=>4 ); function array_insert($arr1, $arr2) { $index = 1; $insert = false; foreach($arr1 as $v) { if ($v['pos'] == $arr2['pos']) { if ($v['id'] 3, 'pos'=>4 ); $arr1 = array_insert($arr1, $arr2); print_r($arr1); $arr2=array( 'id'=>5, 'pos'=>6 ); $arr1 = array_insert($arr1, $arr2); print_r($arr1); ?>
------解决方案--------------------
当
- PHP code
$arr1=array( array( 'id'=>1, 'pos'=>1 ), array( 'id'=>2, 'pos'=>2 ), array( 'id'=>3, 'pos'=>3 ), array( 'id'=>4, 'pos'=>5 ), array( 'id'=>5, 'pos'=>5 ), array( 'id'=>6, 'pos'=>6 ), ); $arr2=array( 'id'=>7, 'pos'=>4 );相关文章
相关视频