比较NlogN中的三个值

时间:2011-10-14 18:15:01

标签: algorithm

如何获取数组,并比较数组中的三个值,而不是多次比较这些值。

我可以使用三个嵌套循环进行迭代,但这将导致相同的内部块被调用三次。我想要NlogN时间。

For Loop
    For Loop
        For Loop
            add values and store if greater than max

1 个答案:

答案 0 :(得分:1)

我不确定我是否完全遵循这个问题,但你可能想做的是做这样的事情:

for i from 1 to N {
    for j from i+1 to N {
        for k from j+1 to N {
            if (i+j+k > currentMax) {
                // do stuff
            }
        }
    }
}