簡體   English   中英

使用給定功能繪制3種顏色的圖形

[英]Graph 3-colors coloring with the use of the given function

我有函數three_colorability(n,E),它提供輸出true(當帶有這些邊緣和頂點的圖形可以用3種顏色着色時)或false(如果不是)。 (!沒有參數可以知道已經着色了什么)我們假設該函數在線性時間復雜度下起作用。

我必須使用將在多項式時間內工作的給定函數來制作給定無向圖G的三色算法。

我無法解決這個問題。

添加3個新節點,它們分別代表代表顏色的C1C2C3 在新節點(C1,C2)(C2,C3)(C1,C3)之間添加邊。 如果three_colorability(V,E)為true,則three_colorability(V+{C1,C2,C3},E+{(C1,C2),(C2,C3),(C1,C3)})也為true。

對於每個(原始)頂點vthree_colorability()對於至少兩個添加了{(v,C1), (v,C2), (v,C3)}邊的圖返回true。 例如,對於帶有增加的邊{(v,C2), (v,C3)}圖, three_colorability()返回true,表示v可以用顏色1着色。

要查找所有頂點的顏色,請遞增查找頂點顏色,並將這兩個邊添加到圖形中。

暫無
暫無

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

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