java - 二叉树如何促进将表达式编译为机器语言

标签 java data-structures binary-tree

Binary trees facilitate high-speed searching and sorting of data, eliminating duplicate data items efficiently, representing file-system directories, compiling expressions into machine language and many other interesting applications.

这是来自《Java 如何编程》第 9 版。

我只是不明白二叉树如何促进将表达式编译为机器语言?

最佳答案

总结/重述评论:

  • 二叉树“促进”编译表达式,就像砖 block “促进”房屋 build 一样。您可以使用砖 block build 房屋,因此它们“促进” build 房屋。

  • 这段文字大部分内容都是免费的。我猜它是介绍性段落的一部分,旨在激发您对涉及二叉树1的示例的兴趣,该示例将在大约一个段落中出现。

  • 如果没有读过这本书……(我预测)他将要描述的那种同构二叉树并不真正适合在编译器中表示表达式。抽象语法树 (AST) 通常既不是二元的也不是同类的。相反,很可能有很多不同的节点类型,并且不同的节点类型具有不同数量和类型的子节点。

  • 从这段文字中无法学到任何有用的东西。向前走。这里什么也没发生。 :-)

1 - 但不要指望编译器的详细解释。这远远超出了编程入门教科书的范围。事实上,我什至不期望对“数据结构”有一个像样的覆盖。

关于java - 二叉树如何促进将表达式编译为机器语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17487693/

相关文章:

java - java Jung Graph包中的二叉树

java - 在对象上同步

java - Wicket 口,ajax 行为未注册到 Wicket 口事件

c# - 如何获得两个城市之间的最低票价

python - 二叉树节点位置和辅助字典

Python:不使用条件的二叉树遍历迭代器

java - 如何替换字符串中的所有 {!XXX}?

java - 如何在 `java2wsdl` 的类上使用 `implements` ?

java - 哪种数据结构占用更多内存?

C# DataTable,通过行/列索引获取值