2

特定の整数フィールドを含む非常に大きなネットワーク キャプチャ ファイルがあります。

RECORD 1 : value 987

RECORD 2 : value 878

RECORD 3 : value 823

      ..
      ..
      ..
      ..
      ..

ネットワーク ファイルをスキャンして、その整数フィールドの最も一般的な値を 5 つ見つけたいと考えています。従来の線形アルゴリズム アプローチでは、すべての一意の整数フィールド値とフィールド値の出現頻度を保存する必要があります。この問題を解決するには、reduce アルゴリズムを使用します。

私のmap()関数は整数値を抽出し、それを配列に格納します。

A = [987, 878, 823 ......].Map(x => x,freq(x))

私のreduce()機能は

freq5 = A.reduce( 0, (x > y) ? x : y)または、上位 5 つの最も頻度の高い値を見つけるのと同様のもの。

このアプローチは理にかなっていますか?

プログラムの実行時間にどのような影響がありますか?

4

0 に答える 0