アルゴリズムの宇宙複雑

宇宙の複雑さ:

ストレージ変数アルゴリズムは、次のとおりです。

1、スペースは、プログラム自体によって占められます。

図2に示すように、スペースが入力されたデータによって占められます。

3、補助変数フットプリント。

入力データのフットプリントは、唯一の問題自体に依存し、アルゴリズムに依存しない、あなただけの入力に加えて、分析し、処理する必要のある余分なスペースは、補助変数によって占められます

空間複雑であり、一般的に注文フォームに所定のn個の問題の規模の関数として、一時的な職業の動作中の記憶空間アルゴリズムの大きさの尺度と呼びます。

S(N)= O(G(N))

宇宙複雑分析1:

int型の楽しい(int型のn){

  int型I、J、K、S。

  S = 0。

  (; I <N; I ++ I = 0)するため

     用(J = 0; jの<I、J ++)

      (; K <J、K ++、K = 0)のための

        S ++;

戻り値;

}

問題の大きさ及びNから独立して一時変数のアルゴリズムの数、空間複雑であるS(N)= O(1)からです。

 

宇宙複雑分析2

空の楽しみ(nは、INT){

 

IF(N == 0){

System.out.println(A)。

}そうしないと{

 

楽しい(N-1)

}

これは再帰アルゴリズムに属し、各コール自体は、空間複雑度はO(n)は、新たな領域を割り当てる必要があります。

注意:

図1に示すように、短い時間の複雑性解析に比べて空間の複雑さ、

2は、再帰的な場合には:再帰コードは、単純なアルゴリズム自体あまり収納スペース、欠点であること:低効率、より多くの一時的な作業単位の実行時間を取ります

  非再帰的な場合に書かれた場合、コード自体は、一般に、より長い、より多くの記憶空間は、アルゴリズム自体によって占められることができるが、操作がより少ない記憶装置を必要とするであろう。

 

公開された45元の記事 ウォンの賞賛8 ビュー5854

おすすめ

転載: blog.csdn.net/wenyunick/article/details/103575422