あなたが持っていると言うkサイズの配列Nから一意の値それぞれ含有1するがN。
平均してお互いに最も離れている2つの数値をどのように見つけますか?
たとえば、次の配列があるとします。
[1,4,2,3]
[4,2,3,1]
[2,3,4,1]
最初の2つの配列では距離が2離れており、最後の配列では3つの数値が離れているため、答えはitem 1と2になります。
私はO(kN ^ 2)解を知っています(各k配列の数値の各ペア間の距離を測定することによって)が、より良い解決策はありますか?
このようなアルゴリズムをC ++で実装したいのですが、ソリューションの説明があれば役に立ちます。