2016-04-03 17 views
-1

空のフィールドを持つ配列があります。
JavaScript - 空のフィールドを持つ配列を逆配列して古い配列に追加する

array() {[4] => 3,[8] => 6,[17] => 24} 

私はそれでグラフを描画していますので、私はそれをこのように使用しています: Particularyそれは以下のようになります。例えば、4cmのところでグラフの高さは3cmです。等々。

ここで問題は、グラフの2番目の部分がちょうどミラーリングされているため、数式は値の半分しか計算しないことです。だから私は、配列の最後の部分を削除し、元の配列の削除された値からの距離を維持しながら、残りの部分を反転する必要があります。
私にはこれを計算できるアルゴリズムが必要です。

array() {[26] =>6, [30] => 3} 
+1

私は最初の配列を2番目の配列に変換するプロセスを理解していません。 26と30はどこから来たのですか? –

答えて

0

あなたはそれでundefined値の潜在的に数千人を持っていますが、欠損値を持つ配列を充填することは比較的容易であるかもしれないので、私は、配列ではない。このための偉大なデータ型を考えます。配列を逆方向にたどり、配列に遭遇した値をプッシュします。

代わりにオブジェクトを使用する方がよい場合があります。そのため、グラフノードを表すキー値のペアを操作できます。

0

完全に機能するかどうかわかりませんが、ロジックに従ってください。元の配列はa となります。

a.fill(0).concat(a.reverse().slice(1)); 

最初に元の配列を反転し、最初の要素(元の配列の最後の要素)を削除します。次に、0の元の配列を連結します(すべての値を削除し、未定義またはその他の値を書き込むことができます)。ブーム、新しいアレイを手に入れる。

関連する問題