我想请求一个关于实现一个二维树结构的建议,这个结构在一个平衡的区域中保持点。
我拥有的(例子):{0,2},{2,3},{5,3},{6,4}
我需要什么(如果我对平衡树有正确的话):
{5, 3}
|
{6, 4} - {2, 3}
|
{0, 2} - null
首先,我想知道我的预期结果是否正确,考虑到 root 节点的拆分维度为0。
然后,我想分享我的算法,并听听它是否是正确的实现方法:
这是正确的方法吗?我应该用另一种方式吗?我正在搜索任何样本,但我只发现了类似的n维实现:
https://code.google.com/p/kd-sharp/source/browse/trunk/KDTree/KDNode.cs
这对我来说似乎过于复杂。
答案 0 :(得分:0)
您描述的内容正是二维的KD树。
如果没有别的东西阻止你这样做,我会使用该库。