2017-05-16 5 views
-1

私はアルゴリズムとデータ構造を練習していますが、Javaコードでアルゴリズムとデータ構造を計算する効果的な方法があるのでしょうか?私のアルゴリズムの速度をsystem.out.printlnすることができるようなもの?ありがとう。Javaコードのアルゴリズムでランタイムの複雑さを計算する有効な方法はありますか?

+3

実行時の速度とアルゴリズムの複雑さは、2つの異なるものです。あなたは何について尋ねていますか? –

+1

おそらく、これはトロールですか?それは、任意のアルゴリズムの漸近実行時間を決定するための効果的な手順がないという、コンピュータサイエンスの素晴らしい、逆説的で古典的な結果です。確かに、任意のアルゴリズムがまったく終了するかどうかを判断する方法さえありません。私たちができることは、有用なサブセットの実行時間の証明(または終了の失敗)を見つけることです。したがって、あなたの質問に対する答えは「絶対にありません」です。 – Gene

答えて

1

最初の質問はあまり明確ではなく、アルゴリズムの擬似コードを見ることで最悪の時間の複雑さを簡単に見つけることができますが、アルゴリズムがとった正確な時間を知りたい場合はここでもあなたが試すことができる1つのアプローチです。

  1. アルゴリズムの開始時に時間を取得します。
  2. アルゴリズムの終了時に時間を取得します。
  3. これらの違いを取ると、プログラムの実行に要した時間がわかります。

ここで、値N(Nはアルゴリズムの依存する値)を増やしてください。

ここでN対時間とグラフとの間にグラフをプロットすると、アルゴリズムの最悪の時間複雑度についてのアイデアを得ることができます。

希望すると便利です。

関連する問題