使用广义表(generalized lists)来表示二叉树非常方便,假如我们有这么一个二叉树: 它可以表示为L = (A (B (C, D), E ( , F) ) ),直观地表达了树中各个节点之间的关系。 今天主要记录如何通过解析这个广义表,构建出真实的树存储结构。 下面是其主要思路: 逐个获取广义表字符串中除空格之外的每个字符,遇到左括号就标记START_LEFT_CHILD,遇到逗号就标记START_RIGHT_CHILD,遇到右括号就返回到父节点层次。当遇到字母时,就创建一个节点,并与父节点进行关联。 遇…