答案 1
核心 Java 库中没有 trie 数据结构。
这可能是因为trys通常被设计为存储字符串,而Java数据结构更通用,通常包含任何(定义相等和哈希操作),尽管它们有时仅限于对象(定义顺序)。“符号序列”没有常见的抽象,尽管适用于字符串,我想你可以对其他类型的符号做一些事情。Object
Comparable
CharSequence
Iterable
还有一点需要考虑:当试图在Java中实现传统的trie时,你很快就会遇到Java支持Unicode的事实。要获得任何类型的空间效率,您必须将 trie 中的字符串限制为某些符号子集,或者放弃将子节点存储在按符号索引的数组中的传统方法。这可能是为什么trys被认为不够通用,无法包含在核心库中的另一个原因,如果您实现自己的库或使用第三方库,则需要注意一些事情。
答案 2
推荐
-
如何使用Java中的RESTful Web服务获取远程/客户端IP地址? 我已经在我的项目中编写了Rest Web服务。Web服务调用可能来自不同 machine.so 我需要通过REST Web服务找出IP地址。 从这个请求.getRemoteAddr()使用这个。 但是我不能使用getRemoteAddr()。因为我的请
-
从包含大量文件的zip文件中提取1文件的最快方法是什么? 我尝试了但它们也缺少一些东西。 LZMA SDK不提供一种如何使用的文档/教程,这非常令人沮丧。没有 javadoc。 虽然7z jbinding没有提供一种简单的方法来只提取1个文件,但是,它只提供了提取zip文件
-
输入/输出流在销毁时是否关闭? Java 中的 InputStreams 和 OutputStreams 是否在销毁时关闭()?我完全理解这可能是不好的形式(特别是在C和C++世界中),但我很好奇。 另外,假设我有以下代码: 无名的FileInputStream是否在p.load
-
Java 程序中的字符串大小是否有任何限制? 我有一个字符串定义为 字符串 xx 我可以分配的字符数是否有任何限制? 2) 我正在将用户输入分配给此字符串 xx。70%的人只说一个字。有时他们给出一个大句子,所以想知道可
-
标签
推荐