我很確定這個問題是P而不是NP,但我很難找出一個多項式約束算法來解決它。給定一個無向圖G =(V,E),確定G是否是一個完整的圖
0
A
回答
0
您可以:
- 檢查圖中的這個數字邊的是
n(n-1)/2
。 - 檢查每個頂點是否連接到不同的頂點。
這將運行在O(V²)
,這是多項式。
希望它有幫助。
+2
你必須更符合你的符號迂腐。它不會在O(V^2)中運行,因爲你甚至沒有描述'V'與'n'的關係。 – Adam
0
這裏是一個O(E)算法:
- 使用O(E),因爲它是輸入時間,掃描圖
- 同時,記錄每個頂點P的程度,增加學位只有當鄰居不是p本身(自連接邊緣)和不是頂點q其中p和q已經有另一個邊已經計算過(多邊),這些檢查可以在O(1)中完成
- 檢查是否所有頂點的度數是| V | -1,這一步是O(V),如果是的話那麼它是一個完整的gra pH值
共爲O(E)
1
下面是一個O(| E |)算法,它也有一個小常量。
枚舉完整圖中的每條邊是很平凡的。所以你所要做的就是掃描你的邊界列表,並確認每個邊緣都存在。對於每個邊(i,j),令f(i,j)= i * | V | + j。假設頂點編號爲0到| V | -1。
令bitvec
是一個長度爲| V |的位向量, ,初始化爲0。
對於每個邊(i,j)中,設置bitvec[f(i, j)]
= 1
G是一個完全圖,當且僅當bitvec
==的每個元件1
該算法不僅觸及E一次,而且如果有分散指令,它也是完全可以向量化的。這也意味着並行化是微不足道的。
相關問題
- 1. 確定圖G中獨立邊的最大數v(G)
- 2. 繪製圖G =(V,E)in R
- 3. 確定一個無向圖是否是樹
- 4. 證明圖G =(V,E)至少有| v | - | E |部件
- 5. 確定一個無向圖是否爲樹
- 6. 如何確定一個url是否是一個圖像?
- 7. BFS加權無向圖G
- 8. 確定是否無向圖連接
- 9. 我收到一個錯誤:圖形g上的java.lang.NullPointerException g
- 10. 無法確定一個字符串當前是否是一個整數
- 11. 確定4個給定的整數點是否創建了一個正方形
- 12. 給定一個圖G,分而治之的方法是否適用於尋找最小生成樹?
- 13. 確定一個圖是否是K-頂點連接的
- 14. 算法來檢查給定的圖是否是另一個圖的子圖
- 15. SPARQL:給定一個dbpedia url,如何確定實體是否是一個人?
- 16. 從有向圖G中刪除一條邊G
- 17. 檢測一個特定的視圖是否是一個webview
- 18. 給定一個WPF圖像控件,是否可以確定它的HWND?
- 19. 確定一個文件是否是一個有效的圖像格式
- 20. 如何定位一個「G」元素SVG
- 21. 這是一個編譯器錯誤? (g ++)
- 22. 如何確定給定的有向圖是否爲樹
- 23. 我試圖確定一個字符串是否是迴文
- 24. 確定一個整數是否是裝配中的完美平方(mips32)
- 25. 確定是否一個iframe是屏幕
- 26. 如何確定給定的DTD是否爲另一個子集?
- 27. 確定字段是否標註有一個給定的註解
- 28. 引導旋轉木馬類型錯誤:E [G]是不是一個函數
- 29. 確定鼠標是否圍繞某個點做了一個完整的圓形
- 30. 檢測一個無向圖中是否存在一個循環
P中的所有問題都在NP中。你的意思是「是P而不是NP-complete」(或「不是NP-hard」)。 – chepner
究竟你在哪裏卡住?你有一個不是P的算法嗎?或者你無法證明的是P?或停留在定義? –