Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在构建一棵树来在二叉树的帮助下评估包含一元和二元运算符、常量和变量的数学表达式。
但是我现在在可视化如何表示三元运算时遇到了问题?可以通过二叉树完成吗?如果没有,我是否有更好的数据结构来表示和评估相同的内容?
请给出意见。
如果您正在使用(或计划使用)二叉树,则可以通过组合两个节点来创建一个具有三个子节点的节点,如下所示:
\ a / \ / b / / \ 1 2 3
如果您要允许常量/变量(具有 0 个子节点的节点)、一元操作(具有 1 个子节点的节点)和二元操作(具有 2 个子节点的节点),我看不出拥有三元操作有什么困难(有 3 个孩子的节点)。如果您解释为什么不能可视化/实现具有 3 个子节点的节点,也许我们可以给您一个更好的答案。