簡體   English   中英

未知概率的計算復雜度

[英]Computational complexity of unknown probability

假設有一份工作並且有很多工人可用。 下面的代碼可能是一個糟糕的優化思路。 但這只是為了分析復雜性。

A is a set of N worker
while (A is not empty)
{
  B=empty set
  foreach a1 in A
  {
    foreach a2 in A
    { 
       b= merge(a1, a2)
       if (b works better than a1 **and** b works better than a2) 
          add b to B
    }
  }
  A=B
}

問題是“b 比 a1 和 a2 效果更好”的概率是未知的。 那么,如何估計上述代碼的時間復雜度呢?

對於兩個內部循環,復雜性與“b 比 a1 和 a2 效果更好”的概率無關。
但是,代碼似乎有點損壞,因為我沒有發現while循環有出口。 不考慮while循環,時間復雜度為

O(a1*a2) = O(N^2)。

遞歸方程將是

T(N) = T(N-1) + C

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM