2011-02-10 9 views
1

テキストファイルを開き、5〜20語を読み込んで配列に格納し、テキストファイルを再び閉じるアルゴリズムがあります。5〜20語のテキストファイルを読み込むためのBig O記法

このアルゴリズムにBig O Natation(1)または(n)を使用していますか?

+0

これらの5〜20語はどのように選択されていますか? – Gumbo

+0

彼らは多かれ少なかれ管理者によって選ばれているので、増加しておらず、限界を上回らないだろう。 – Tyzak

答えて

7

私はここで一般的な意見に反対し、それがO(n)だと言うでしょう。ここで、nは平均単語長です。明らかに、もしそれらの20語の長さが倍になるならば、それを読むためにあなたがする必要がある仕事の量も倍増します。

ただし、単語の最大長も一定の場合は、O(1)になります。

+0

私はあなたと一緒にいます。 – Blrfl

+0

これはO(n)でもあり、nは(ファイル内の)入力データのサイズであり、それは関連するものよりも 'n'のより一般的な定義ですこの場合、データサイズが5 *平均と20 *平均で下限に制限されているので、2つは複雑さに等価です。 –

+0

単語は "本当の"商品や場所、月などの「一般的な」単語。単語の長さはそれより大きくはありません – Tyzak

1

O(1)常に制限された数の操作を使用します。

4

あなたがすることになっているものnを教えない限り、それはO(1)です。

+0

私は、例えば探索アルゴリズムによって、谷に行くためにはO(n)私は学んだ]。 nは変数になります。 (数値は修正されていませんが、数値は5〜20単語で制限されています) – Tyzak

+0

この場合、 'n'はおそらく配列内の要素の数であり、明示的には言及されていません。ファイルのサイズ?アルゴリズムの読み込む単語の数?(sepp2kが示唆するように)平均単語の長さ? – Oswald

3

それがアルゴリズムを実行するのに要する時間は、内の単語の数としてもはや取得しないようなアルゴリズムが実行される一つ一つの時間は、それは20の以上の言葉を読まない、それは、(1)Oである場合テキストファイルが増加します。

関連する問題