2014-03-29 48 views
-2

我怎麼知道是什麼如何計算C#代碼的複雜度?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace basic 
{ 
class Hello 
{ 
    static void Main(string[] args) 
    { 
     Console.WriteLine("hello"); 
    } 
} 
} 

我想知道,什麼是上面給出的代碼的複雜性

+1

根據什麼複雜度測量? –

回答

1

有幾種不同類型的軟件複雜性的措施我的C#pragram的複雜性。常見的一個是圓形複雜性。它粗略地測量代碼庫中分支語句的數量。由於您的示例代碼沒有ifs或for-loops,所以圈複雜度爲1.

other measures可用於計算代碼庫的某些複雜性方面。還有一些工具,如NDepend,可用於計算C#代碼庫中的多個度量。

+0

thanxxx .. 其實我在想這種方式,假設我正在以兩種不同的方式寫一個特定問題的代碼,那麼我怎麼知道哪種方式更有效率?不太複雜 – Ankit

+0

您的代碼效率可以測試通過性能測試,例如用幾個不同的輸入運行相同的代碼幾次。你也可以做一些增長分析的順序,看看你的算法如何在給定越來越大的輸入的情況下執行。至於複雜性,您可以使用圈複雜度,計算相關性的數量或其他度量。 –