Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在给定位数组的情况下,如何在位Trie中找到最近的签名?_Java_Algorithm_Tree_Trie - Fatal编程技术网

Java 在给定位数组的情况下,如何在位Trie中找到最近的签名?

Java 在给定位数组的情况下,如何在位Trie中找到最近的签名?,java,algorithm,tree,trie,Java,Algorithm,Tree,Trie,给定一个位的Trie,以及作为位数组/向量的输入,如何在Trie中找到输入向量的最近邻居 我正在尝试的算法如下所示: 给定位向量V和置换函数F,执行以下操作: 1-F(V)=V_u;其中V_u是V的签名 2-在trie中插入V_u 过了一段时间。。。给定位向量U,执行以下操作: 1-F(U)=U 2-在trie中查找最近的签名 最近的签名由汉明距离定义。您可以使用它来连续缩小搜索空间。在树上执行深度优先搜索,并跟踪到目前为止有多少位未匹配。当你发现一片叶子更接近你的目标时,你会更新当前的帽子。当

给定一个位的Trie,以及作为位数组/向量的输入,如何在Trie中找到输入向量的最近邻居

我正在尝试的算法如下所示: 给定位向量V和置换函数F,执行以下操作:

1-F(V)=V_u;其中V_u是V的签名

2-在trie中插入V_u

过了一段时间。。。给定位向量U,执行以下操作:

1-F(U)=U

2-在trie中查找最近的签名


最近的签名由汉明距离定义。

您可以使用它来连续缩小搜索空间。在树上执行深度优先搜索,并跟踪到目前为止有多少位未匹配。当你发现一片叶子更接近你的目标时,你会更新当前的帽子。当您走进一个比当前上限更远的子树时,您将对其进行修剪。如果有匹配的子树,一定要先进入匹配的子树。

如何定义“最近的邻居?”@templatetypedef最近的签名由汉明距离定义。您必须在此处使用trie吗?这方面有更好的数据结构。@templatetypedef是的,我正在读一篇论文,我试图理解他们为什么要做一个步骤,为了做到这一点,我需要理解这一点。