gpt4 book ai didi

iphone - 逻辑 - 需要找到重叠的数字范围

转载 作者:行者123 更新时间:2023-12-03 16:51:17 28 4
gpt4 key购买 nike

假设我有一个“numbers”对象数组,其中包含“startNo”整数和“endNo”整数。

数组中可以有多个“数字”,我想获取一个包含修改对象的新数组,该数组仅具有不重叠的范围。

例如:如果数组有:

number
( startNo:1 endNo:3)
( startNo:1 endNo:7)
( startNo:2 endNo:9)
( startNo:15 endNo:18)
( startNo:50 endNo:60)
( startNo:55 endNo:65)

我想得到一个像这样的数组:

number
( startNo:1 endNo:9)
( startNo:15 endNo:18)
( startNo:50 endNo:65)

我一直在尝试使用结构、fors 等不同方法,但我得到的只是多层次的困惑。

我正在使用 Objective-C 平台,如果有帮助的话

补充:startPage可以是一个大数字,endPage可以是一个小数字。

最佳答案

这是一道经典算法类(class)问题..

按第一个(最小)值的降序对数组进行排序。跟踪两个变量:开始段、结束段。

每回合选择一个数组并检查开始和结束数字,并找出它是否是否在该段中。

这样就可以找到重叠部分

祝你好运

关于iphone - 逻辑 - 需要找到重叠的数字范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15405991/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com