gpt4 book ai didi

c++ - 使用 int 数组作为键的二叉树(欧氏距离)?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:55:29 26 4
gpt4 key购买 nike

已经编写了一个存储船舶数据的二叉搜索树,搜索的关键是他们的声学特征。

在搜索树时,我想返回一艘具有正确签名或与搜索到的签名最匹配的飞船。 (通过查看哪艘船的欧氏距离最近)。

我遇到的问题是如何比较签名而不是它们的实际数值。那么这意味着执行的任何搜索都是顺序的而不是二进制的?

有什么想法吗?

最佳答案

您所做的归结为 nearest-neighbour search在多个维度。你不能只用二叉树有效地解决这个问题;你需要一些空间分区结构。

如果您的数组长度 N 很小(个位数),您可以使用 2^N 叉树(四叉树、八叉树...)作为二叉树的推广。

一个流行的选择也适用于更高的维度是 Kd-tree .

关于c++ - 使用 int 数组作为键的二叉树(欧氏距离)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10465686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com