0
我有与含有最小每个条目和最大值为一束套的阵列的阵列,例如以下之一:合并重叠设置从套
Array
(
[0] => Array
(
[0] => 1200
[1] => 2400
)
[1] => Array
(
[0] => 1400
[1] => 3800
)
[2] => Array
(
[0] => 2700
[1] => 4200
)
[3] => Array
(
[0] => 5900
[1] => 6400
)
)
对于每个索引,0的索引是最小值,1指数是该特定组的最大值。我需要创建一个JavaScript或PHP函数来整合这个数组,以便重叠的集合变成一个。所以,上述的阵列将变成如下:
Array
(
[0] => Array
(
[0] => 1200
[1] => 4200
)
[1] => Array
(
[0] => 5900
[1] => 6400
)
)
正如你可以看到,从第一阵列indicies 0,1和2被合并为索引0为第二阵列。第一个数组中的索引3与其他任何数组都没有重叠,因此第二个数组中的索引为1。
原始数组本身将包含大约70到80组,并且最小值和最大值可以高达9999999999,因此以n,n + 1,n + 2方式遍历数字线是不可行的。
任何想法?
UPDATE +溶液
如在下面的评论说,这确实是一个重新发布(没看到其他职位)。的链接,该解决方案是在下面的链接:
Merging overlapping ranges in PHP arrays?
按照你的例子,这些集合是否按下限排序? – 2010-09-17 03:13:41
看起来像是重复的http://stackoverflow.com/questions/3630500/merging-overlapping-ranges-in-php-arrays/3631016 – Matthew 2010-09-17 03:48:42
对不起,迟到的回复,赶上了一些项目。事实上,它看起来像一个转贴。当我在找它时没有看到那个帖子:/谢谢konforce。谢谢Andrew Cooper。 – user396404 2010-09-21 09:40:05