2012-03-30 10 views
-1

私は与えられたフォーマットのサイズが約1GBの巨大なファイルを持っています。各行には2つの番号があります。 ここでは、ユーザーが指定した番号が範囲内にあることを確認します。 ファイルが巨大なので、時間がかかります。どのアルゴリズムの洞察も時間要素を減らすのに役立ちます。巨大なファイルの解析のアルゴリズム

#1 2 
    #3 5 
    #6 7 
    #7 41 
    #7 8 
    #9 41 

    Input : 4,8,9 

    OUTPUT 

    #1 2 
    #3 5 #4 
    #6 7 
    #7 41 #8,9 
    #7 8 #8 
    #9 41 #9 
+0

使用している言語/フレームワークは何ですか?あなたの現在のファイルの読み込みコードはどのように見えますか? – hatchet

答えて

1

入力がわずかであれば、ファイル全体をスキャンするのと、行ごとに各番号を個別にチェックすることよりも速いものはありません。入力が多い場合(> = 20)、各行の下側と上側の数字が入力番号の範囲と重なっている場合、それらを並べ替えてバイナリ検索で確認できます。

0

各/いくつかの開始値に対してfile_seekの位置を持つインデックスファイルを作成します。この方法で、適切なファイルの一部にジャンプすることができます。

関連する問題