用于蛮力算法的伪代码,用于查找列表中两个数字的最大乘积

时间:2016-03-04 02:30:07

标签: algorithm sorting pseudocode discrete-mathematics

我正在尝试提出一种伪代码暴力算法,该算法在列表a [sub1]到[subn]中找到两个数字的最大乘积,n大于或等于2.现在,我有

for ( i = 1 to n -1)

    a[subi] = a[subi-1] * a[subi+1]

    for (j = a[sub j+1] to n)

        a[sub j] = a[sub j-1] * a[sub j+1]

    end for

end for

return `a[sub i]`

return `a[sub j]`

然而,这是不正确的。我觉得我在这里找不到一些简单的东西,但我无法弄明白。有任何想法吗?提前谢谢。

1 个答案:

答案 0 :(得分:2)

largest_product = a[1] * a[2]

for ( i = 1 to n -1)
    for (j = i + 1 to n)
        product = a [i] * a [j]

        if (product > largest_product)
            largest_product = product
        end if
    end for

end for

return largest_product

修改

对您的问题的评论建议在线性时间内提供更有效的解决方案。

实施将跟进。