-1
- 字母代表真/假值
- True,則允許較低級別的遍歷;錯誤意味着低位字母也都是錯誤的。
- 例如,如果a爲false,則下面的所有字母也將爲false。
- 鑑於任何形成的樹,總是有3個級別,我如何計算所有字母的真/假值的所有有效組合?
- 我正在尋找算法名稱,資源鏈接。不是你將如何實現它。
謝謝,任何幫助表示讚賞。
謝謝,任何幫助表示讚賞。
有一個簡單的遞歸算法。以下結果列舉了分配給T
的一組字母;由於信件被分配或者T
或F
,很明顯如何推導出完整的映射:
# I use ++ for the operation of concatenating lists/sets
# and [X] to produce a list/set consisting of the single element X
enumerate(Q, Accum):
if Q is empty:
return [Accum]
else:
remove the head of Q and put it in Head
return enumerate(Q, Accum) ++
enumerate(children(Head) ++ Q, Accum ++ [Head])
枚舉林的組合,叫
enumerate(Roots(Forest), [])
深度第一和/或廣度優先看起來好這裏的候選人 –
「計算所有有效的真/假值組合」是什麼意思?你只是想找出哪些是真的,哪些是假的?還是你想確定別的東西? –
@KevinWells我試圖找出所有可能的有效組合真假。例如,如果j的父項爲假,則它是無效的。所以一個例子可能是(a = false。b = false,c = false,... rest是錯誤的)。 – zino