问题描述
我正在寻找一些用于现代或旧式商业/自由软件项目中的树形结构的示例.我可以在Wikipedia上看到示例,但是我正在寻找更具体的示例以及如何使用它们.例如,数据库中的主键(根据我的读物)存储在BST结构中或BST的一种变体中(请随时对此进行纠正)
I'm looking for some examples of tree structures that are used in commercial/free software projects, modern or old. I can see examples on wikipedia, but I am looking for more concrete examples and how they're used. For example primary keys in databases are (from what I've read) stored in BST structure or a variation of the BST (feel free to correct me on this)
我的问题不限于二进制搜索树(BST),它可以包括红黑色,AVL等任何变体.
My question isn't limited Binary Search Trees (BSTs), it can include any variation such as red-black, AVL and so on.
推荐答案
示例是否有点通用,即与图有关,而与树无关,可以吗?如果是这样,请继续阅读.
Is it okay if the examples are a tad bit generic i.e. relate to graphs and not necessarily to trees? If it is, read on.
-
不用说,大多数XML/Markup解析器都使用树.例如,请参阅Apache Xerces.或者,Xalan XSLT解析器.感谢 mathewsdave26 提醒我!
PDF是基于树的格式.它具有一个root
节点,后跟一个catalog
节点(它们通常是相同的),然后是一个具有多个子page
节点的pages
节点.生产者/消费者通常使用平衡树实现将文档存储在内存中.
PDF is a tree based format. It has a root
node followed by a catalog
node(these are often the same) followed by a pages
node which has several child page
nodes. Producers/consumers often use a balanced tree implementation to store a document in memory.
计算机棋类游戏会构建一棵巨大的树(训练),并在运行时使用启发式方法进行修剪以达到最佳移动效果.
Computer chess games build a huge tree (training) which they prune at runtime using heuristics to reach an optimal move.
Flare 是用AS编写的可视化库.您可能想查看数据对象的映射方式.特别是flare.analytics
程序包大量使用图结构,生成树等.
Flare is a visualization library written in AS. You may want to check out how the data objects are mapped. In particular the flare.analytics
package heavily uses a graph structure, spanning trees etc.
社交网络是CS研究中的当前流行语.不用说,连接/关系是使用图自然建模的.通常,树用于表示/识别更有趣的现象.您如何回答诸如哈利和莎莉有共同的朋友吗?"之类的问题?
Social networking is the current buzzword in CS research. It goes without saying that connections/relations are very naturally modeled using graphs. Often, trees are used to represent/identify more interesting phenomena. How do you answer questions like "Does Harry and Sally have any common friend(s)?"
一些非常成功的物理/游戏引擎会构建树木来准确模拟人类的运动.在这种情况下,一棵树通常对应于一组动作.上下文将确定采用哪种路径来呈现特定的响应.
Some very successful physics/games engines build trees to accurately simulate human movement. A tree in this case will typically correspond to a set of actions; The context will determine which path is taken to render a particular response.
基于决策树的学习实际上构成了数据挖掘研究的强大领域.存在许多著名的方法,例如套袋,增强及其对树木的工作.此类工作通常用于生成预测模型.
Decision Tree based Learning actually forms a formidable area of data mining research. Numerous famous methods exist like bagging, boosting, and modifications thereof which work on trees. Such work is often used to generate a predictive model.
生物信息学中的一个常见问题是搜索巨大的数据库以查找给定查询字符串的匹配项.尝试在那儿很常见.
A common problem in bioinformatics is to search huge databases to find matches for a given query string. Tries are a common occurrence there.
不少成功的(股票)交易员在日常交易中使用决策树-选择交易,退出交易.通常,这些代码没有编入计算机程序中,而是写在笔记本背面的某个地方.
Quite a few successful (stock) traders use decision trees in their day to day trading -- to choose a trade, to exit one. Often times these are not codified in a computer program, but written down somewhere on the back of their notebook.
这篇关于树木结构的真实例子的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!