我試圖計算下列算法的大O但我很困惑,需要一些幫助:BIG-O /大哦符號
Algorithm 1. DFS(G,n)
Input: G- the graph
n- the current node
1) Visit(n)
2) Mark(n)
3) For every edge nm (from n to m) in G do
4) If m is not marked then
5) Dfs(G,m)
6) End If
7) End For
Output: Depends on the purpose of the search...
我甚至不會開始說什麼,我(錯誤地)計算出解決方案。任何人都可以幫我解釋一下嗎?
謝謝。
編輯:顯然我的O(n+m)
的計算是正確的......有人可以驗證這一點嗎?
編輯2:或者是O(|n|+|m|)
?
不,你真的應該說你認爲這是家庭作業,沒有人會幫助,如果你至少沒有證明你是至關重要的。 – 2011-05-06 13:21:10
我認爲你應該從你的推理開始,我們會幫助你。不要爲此感到尷尬,最好是證明你已經嘗試過,否則我們會假設你讓我們爲你做你的功課:-)。 – 2011-05-06 13:22:05
@Justin我只想指出,這實際上是修訂而不是作業。因此,我決定嘗試通過我自己的選擇來計算這個算法的Big-O。但是,如果你絕對必須知道,那麼我計算它是O(n + m)。正如你所看到的,這是(幾乎肯定)不正確,因爲我沒有看到任何Big-O導致O(x + y)... @Mark我希望這證實了我的推理! :-D – MusTheDataGuy 2011-05-06 13:24:48