[[{key:'categoryL2',value:'Screws'}, {key:'categoryL2',value:'Bolts'}], [{key:'categoryL3' : 'Nuts'}]
这表示为 List<List<Key,Value>>
逻辑上是:
如果 categoryL2 是 Screws AND Bolts 或 categoryL3 是 Nuts,则返回 true。
有没有办法在可以遍历的 boolean 逻辑树中正确表示它?
示例结构:
[
OR :
[
AND :
{"key":"categoryL2","value":"Screws"},
{"key":"categoryL2","value":"Bolts"},
{"key":"categoryL2","value":"Wires"}
],
[
{"key":"categoryL3","value":"Nuts"}
],
[
{"key":"categoryL4"}
]
]
我认为可行的与或树解决方案草图:
最佳答案
与或树解决方案草图:
实现知道包括反向引用,这将帮助您从任何子节点识别父节点
关于java - 从值的 ArrayList 构建 boolean 逻辑树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28903656/