gpt4 book ai didi

ios - 比较数组中的数字

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:58:50 24 4
gpt4 key购买 nike

我有一个称为样本的核心数据对象数组,每个样本都有一个 depthFrom 和 depthToo。我将每个示例加载到 tableView 中以显示 depthFrom 和 Too。我需要检查值之间的差距,如果有,则插入一个新样本。

表中的样本可能如下所示,带有 depthFrom 和 depthToo,

enter image description here

问题是因为 100 到 210 之间的数字之间存在差距,因此应将新样本添加到表格中。尽可能使用 50 的间隙,这样自动生成的样本看起来就像这样。

enter image description here

我不确定如何比较值,我宁愿在调用 cellForRowAtIndexPath 之前加载 View 时进行比较,这样我就不需要再次重新加载表。我正在考虑遍历每个值并比较它们,但它们都在同一个数组中,所以我不确定我将如何做到这一点。我在我的应用程序中正确显示了所有数据,这只是我需要考虑的差距,如果我能够找到一种方法来比较数组中的值,那么我可以管理添加新对象,我只需要指向正确的地方方向,因为这对我来说是新的。

如果我的问题有任何令人困惑的地方,请添加评论,我会相应地进行更新,感谢您的帮助。

最佳答案

要修复间隙,您必须跟踪最后一个 depthTo 并检查它与当前样本之间是否存在间隙。如果有,则以 50* 的间距插入样本,直到我们到达当前样本。

这是一个伪代码解决方案:

samples = NSMutableArray

int lastDepthTo = 0;

for (i = 0; i < [samples count]; i++) {
s = samples[i]

// add missing samples (upto current s.depthFrom)
while (s.depthFrom > lastDepthTo) {

genDepthTo = MIN(d.depthFrom, lastDepthTo+50)
generated = new sample(depthFrom: lastDepthTo, depthTo: genDepthTo)
[samples insert:generated atIndex:i]

i++ // increment i to skip inserted sample
lastDepthTo = genDepthTo
}

lastDepthTo = s.depthTo
}

注意:这是未经测试的,可能因 i 的索引而偏离 1。

关于ios - 比较数组中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31520637/

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