我想写一个线性时间算法O(n),它给出一个表A [0..n-1] (用自然数递增)检查是否存在是满足f(A [i],A [j])= C (C是预定义的常数)的对A [i],A [j]。推广一个简单的线性时间算法
假设F(A,B)= A + B的算法是:
Algo Paires(A[0..N-1], C)
in: Tab A[0..n-1] and C a constant
out : Boolean
Init indice ← 0
For i ← 0..n-1 do
if indice ≠ i & A[indice] + A[i] = C
return true
else if i = n-1 & indice ≤ n-2
indice++; i ← 0;
End for
return False
但如果:
会是怎样的算法呢?有什么建议么 ?
这听起来像你希望我们做的功课你。 – 2011-03-14 19:16:37
我只是寻找一些帮助,我认为我在正确的地方...我写了算法我自己现在我想概括它,但不幸我不知道如何...我不想你做对我来说,但帮助我一些提示或建议.... – Mooh 2011-03-14 19:26:11
这是O(n²)。 – aaz 2011-03-14 19:32:27