加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在java中存储未知数量的字符串的最快方法是什么?

发布时间:2020-12-15 05:07:58 所属栏目:Java 来源:网络整理
导读:我想存储未知数量的字符串,然后按照添加的顺序读取它们.正如我所说,我需要的唯一功能是: 可以添加未知数量的字符串而不会因为调整大小而减慢速度 可以按添加顺序读取元素 问题是我想从trie的一部分输出字符串.因此,在返回字符串之前计算字符串会使操作所需
我想存储未知数量的字符串,然后按照添加的顺序读取它们.正如我所说,我需要的唯一功能是:

>可以添加未知数量的字符串而不会因为调整大小而减慢速度
>可以按添加顺序读取元素

问题是我想从trie的一部分输出字符串.因此,在返回字符串之前计算字符串会使操作所需的时间加倍.

(另一个解决方案是使用属性跟踪trie中的字符串数量,但因为我只想返回trie的一部分,这也不是一个完美的解决方案)

解决方法

ArrayList通常比LinkedList快.如果未指定适当的大小,则每次容量耗尽时,都必须重新分配新数组(使用double大小)并将元素复制到新数组.

您可以使用LinkedList来避免此成本,但平均时间可能会更长.

无论你使用什么样的集合,如果你没有足够的内存,GC会触发,这也可能会带来一些延迟.没有任何限制的“未知数量”不可能存储在任何内存中的集合中.如果“unknown”可能非常大并且禁止使用内存中的集合,那么您将需要我们一个文件或数据库.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读