非負の整数を含む配列が与えられていると仮定します(必ずしも区別されない)。
してみましょうあること、Aは非増加順にソート。私たちは、計算したい メートル= 最大I ∈ [ N ] B [ I ] + I 。
明らかな解決策は、を並べ替えてからmを計算することです。これにより、最悪の場合に時間O (n lg n )で実行されるアルゴリズムが得られます。
もっと良くすることは可能ですか?線形時間でを計算できますか?
私の主な質問は上記のものです。しかし、次の問題の一般化について知ることは興味深いでしょう。
LET さAは、いくつかの比較オラクルに従ってソート≤ 及びfは、Oracleによって与えられる機能。与えられたAと神託のため≤とF、我々は計算するのに必要な時間について何を言うことができるメートル= 最大I ∈ [ N ] F (B [ I ] 、I )?
それでも、O (n lg n )時間でを計算できます。しかし、この一般化されたケースの超線形下限を証明できますか?