1

我有一堂课叫Node.

public Node
{
    public int data;
    public Node primaryNext;
    public Node secondaryNext;
}

我有一个Node root = null;And 当从输入中接收到第一个值时,它会运行类似这样的东西。

root = new Node;
root.data = /*input*/ ;
root.primaryNext = null;
root.secondaryNext = null;

下一步是Node在列表的末尾添加一个新的,通过在逐级填充“指针”树时指向root.primaryNext或指向root.secondaryNext一个新的。Node所以我需要做这样的事情:

这个想法的 GIF。

我认为这可以通过使用递归方法应用于每个节点级别的 ||、&&、|、& 运算符来完成。所以:

  • 如何像 RPN 一样在 C# 中操作?
  • 如果可以,最好的方法是什么?我非常了解递归,但我可能不会做最好的方法。

谢谢。

4

1 回答 1

0

建议:

将单个节点推送到堆栈上的一个命令。

另一个从堆栈中取出两个最顶层节点的命令,将它们组合并将结果推回堆栈。

于 2012-09-27T22:16:04.117 回答