保留旧数据结构的术语重写替代

问题描述

我遇到一个问题,即您具有某种符号表达式的树数据结构,然后我需要使用重写规则 扩展某些树部分以获得一个最终扩展的数据结构。

我可以想到几种方法。第一种方法,您只需用新的扩展节点替换旧节点。但是这里的问题是您无法跟踪/调试回原始数据结构。

因此,我考虑第二种方法,即遍历老树并构建新树,并使用扩展的节点在两者之间创建映射。这似乎相当昂贵,因为您实际上是在复制潜在的大型结构并对其进行扩展,同时将两者都保留在内存中。

这让我想知道是否存在第三种方式或其他方式,您可以以某种方式创建从旧到新的映射,同时在新旧数据结构之间尽可能多地重用(同时还要创建新的像#2中那样映射)。这样有可能吗?怎么做?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)