【发布时间】:2018-03-08 09:35:15
【问题描述】:
正如主题所说,当涉及大量间隔时,我遇到了优化问题
变量:FirstPrice、LastPrice、Increment 和用户写入的数字
任务:需要以特定间隔将数字舍入到一侧或另一侧。
示例: FirstPrice = 0.99, LastPrice = 9.99, Increment = 1 用户数 = 5.35
工作流程: 我需要找到一个数字存在的区间,我能想到的是将数字推入数组。所以对于这个示例数组将是: ["0.99","1.99","2.99","3.99","4.99","5.99","6.99","7.99","8.99","9.99"]。 然后我使用 for 循环来查找存在于哪个区间(在本例中为 number = 5.35)数字。在这种情况下,间隔将从 4.99 到 5.99。然后用户号更新到 4.99 或 5.99。
问题: 用少量的数字可以很好地做到这一点。但是要执行高范围真的很难。例如。如果 FirstPrice = 1 LastPrice = 1000000 和 Increment = 1。然后我的数组会获得数千个值,并且将每个值推入数组并找到数字所需的时间太长。数组获取 ~999999 个值,然后循环遍历所有值以找到特定的间隔。
所以我认为我的问题很清楚。优化。我需要一种更好的方法来做到这一点。我尝试将价格范围降低到一半,但间隔是错误的。尝试使用插入的号码,但出现了同样的问题。
【问题讨论】:
-
用数学代替这个可憎的东西怎么样
标签: javascript arrays optimization numbers