欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

截取符合条件的数组,该如何解决

程序员文章站 2022-03-31 15:51:22
...
截取符合条件的数组

$arr = Array
(
6 => Array
(
id=> 358
level=> 6
)
4=> Array
(
id => 354
level => 4
)
5 => Array
(
id => 353
level => 5
)
)

有上面这样一个数组按键的顺序来来截取合适的数组
如果key的排序为6的在前面 如上列 key排序为 6,4,5就只取
$arr = Array
(
6 => Array
(
id=> 358
level=> 6
)
}
如果数组排序为5,4,6 就只取5,6两个
$arr = Array
(
5 => Array
(
id => 353
level => 5
)
6 => Array
(
id=> 358
level=> 6
)
)
如果4在前面排序为4,5,6就都取,
$arr = Array
(
4=> Array
(
id => 354
level => 4
)
5 => Array
(
id => 353
level => 5
)
6 => Array
(
id=> 358
level=> 6
)
)
以上如果有4,5,6,7,8,9多个的话改如何优化呢?
------解决思路----------------------
排序为 6,4,5就只取 6(可认为取第一个或最后一个)
排序为5,4,6 就只取5,6两个(这又是取两端了)
排序为4,5,6就都取(规则又变了)
像你这样多变的规则,是无法写程序的

你也没有给出代码,优化更无从说起了
------解决思路----------------------
看了下,你这个唯一的规则就是,按照第一条数据的key,往上取值

5,4,6 第一个是5 ,取比5 大的(包含5),就是 5,6
4,5,6 第一个是4 ,取比4 大的(包含4),就是 4,5,6

那你在循环的时候,记录第一条数据的key值,每次都判断key是否大于第一个值,大于就记录
这样你就不需要管他,是7,8,9还是更多的数据
截取符合条件的数组,该如何解决

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频