<分区>
有人知道用 Javascript 实现简单 BTree 的好例子吗?我有一堆随机到达的“东西”,想有效地插入每一个。
最终,每个新的元素都将根据它在树中的最终位置插入到 DOM 中。
我可以从头开始编写代码,但不想重新发明任何轮子。
谢谢
<分区>
有人知道用 Javascript 实现简单 BTree 的好例子吗?我有一堆随机到达的“东西”,想有效地插入每一个。
最终,每个新的元素都将根据它在树中的最终位置插入到 DOM 中。
我可以从头开始编写代码,但不想重新发明任何轮子。
谢谢
最佳答案
如果重要的话,我发现将这种数据存储为文字树的效率低于将其存储为已排序的数组并在数组上进行二进制搜索以拼接/插入元素的效率。显然,JavaScript 对象的创建不是免费的。
还有 ol' encode-a-tree-in-an-array 技巧:
[5, 3, 7, 1, null, 6, 9, null, null, null, null, null, null]
与
相同 5
/ \
3 7
/ / \
1 6 9
即 child (N[i]) = N[2i+1], N[2i+2] 。我不知道这是否真的让您在 JavaScript 方面有所收获。
如果您尝试了一些二叉树的替代方案,您能在这里发布您的发现吗? :)
关于javascript二叉搜索树实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1331289/