java - 自定义链表的indexof调用(java)

标签 java performance

我正在使用一个非常大的(自定义对象)链接列表,并且我正在尝试确定我尝试添加到列表中的对象是否已在其中。

问题是我正在搜索的项目是一个独特的对象,其中包含: 第一弦 第二根弦 唯一计数#

我试图找出我的链接列表中是否有一个项目包含(第一个字符串)和(第二个字符串),但忽略(唯一的计数#)。

这可以通过遍历每个单独的链接列表项的愚蠢方式(我首先尝试的方式)来完成 - 但这需要太长时间。我正在努力加快速度!我认为使用 (indexOf) 会有所帮助,但我不知道如何自定义它正在搜索的内容。

有什么想法吗?

最佳答案

indexOf() 也具有 O(n) 性能,因为它会逐步扫描列表,直到找到您要查找的元素。

列表排序了吗?如果是这样,您也许可以使用快速排序之类的方法来搜索元素。

如果您需要恒定时间访问随机元素,我认为链接列表不是您的最佳选择。

关于java - 自定义链表的indexof调用(java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238082/

相关文章:

java - Java反射有通用的 "back-end"库吗

java - 使用 XPath 搜索和检索 XML 中的属性

java - 将三个通用数组列表合并为一个

php - 在 PHP 中向排序数组中插入元素有哪些更好的方法

python - 检查两个大型名称和版本列表中的版本更新

python - 比较速度 Python 和 Julia

c# - 哪个具有更好的性能,Action 或 Wiring to Event

java - 通过循环从套接字读取数据时获取 "java.io.EOFException"

java - 如何使用 Spring 4 使用动态凭证发送电子邮件

wpf - TextBox UpdateSourceTrigger = PropertyChanged - 它真的会影响性能吗?