Collections.binarySearch() 与 List indexOf()

2023-11-23

我有超过 37K 项的列表,并且我已经实施了hashCode(), equals(),所以我想知道Collections.binarySearch()可以帮助提高性能并且比indexOf() method.


如果您的收藏已排序,binarySearch()将是 O(log n) 而不是indexOf()的 O(n),你肯定会看到改进。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Collections.binarySearch() 与 List indexOf() 的相关文章

  • HAProxy SSL终止+客户端证书验证+curl/java客户端

    我希望使用我自己的自签名证书在 HAProxy 上进行 SSL 终止 并使用我创建的客户端证书验证客户端访问 我通过以下方式创建服务器 也是 CA 证书 openssl genrsa out ca key 1024 openssl req
  • 如何将jscrollpane添加到jframe?

    我有以下源代码 有人可以给我建议如何将 jscrollpane 添加到 jframe 上吗 我尝试了几次将其添加到 jframe 但没有任何进展 它甚至没有显示 public class Form3 JFrame jframe new JF
  • 删除优先级队列的尾部元素

    如何删除优先级队列的尾部元素 我正在尝试使用优先级队列实现波束搜索 一旦优先级队列已满 我想删除最后一个元素 优先级最低的元素 Thanks 没有简单的方法 将元素从原始元素复制到新元素 最后一个除外 PriorityQueue remov
  • 从 MS Access 中提取 OLE 对象(Word 文档)

    我有一个 Microsoft Access 数据库 其中包含一个包含 Microsoft Word 文档的 OLE 对象字段 我试图找到代码来检索保存在 OLE 对象中的文件 以便用户可以从我的 JavaFx 应用程序中的按钮下载它 但没有
  • tomcat 7.0.50 java websocket 实现给出 404 错误

    我正在尝试使用 Java Websocket API 1 0 JSR 356 中指定的带注释端点在 tomcat 7 0 50 上实现 websocket 以下是我如何对其进行编码的简要步骤 1 使用 ServerEndpoint注解编写w
  • Java:从集合中获取第一项

    如果我有一个集合 例如Collection
  • 测量数组的“无序”程度

    给定一个值数组 我想找到总 分数 其中每个元素的分数是数组中出现在其之前的具有较小值的元素的数量 e g values 4 1 3 2 5 scores 0 0 1 1 4 total score 6 O n 2 算法很简单 但我怀疑可以通
  • 如何通过注解用try-catch包装方法?

    如果应该在方法调用中忽略异常 则可以编写以下内容 public void addEntryIfPresent String key Dto dto try Map
  • 在 Java 中通过 XSLT 分解 XML

    我需要转换具有嵌套 分层 表单结构的大型 XML 文件
  • Java、Spring:使用 Mockito 测试 DAO 的 DataAccessException

    我正在尝试增加测试覆盖率 所以我想知道 您将如何测试 DAO 中抛出的 DataAccessExceptions 例如在一个简单的 findAll 方法中 该方法仅返回数据源中的所有数据 就我而言 我使用 Spring JdbcTempla
  • 用于缓存的 Servlet 过滤器

    我正在创建一个用于缓存的 servlet 过滤器 这个想法是将响应主体缓存到memcached 响应正文由以下方式生成 结果是一个字符串 response getWriter print result 我的问题是 由于响应正文将不加修改地放
  • Prolog 中的隔离列表

    我很难理解如何让我的代码显示由偶数和奇数组成的隔离列表 我什至不确定我的理解缺乏什么 显然我对这门语言很陌生 必须在学校使用它 我的命令式和功能性思维不会让我知道这到底是怎么回事 哈哈 现在 不 我不是要求你做我的作业 我只是请你帮我看看我
  • Spring Data JPA:查询如何返回非实体对象或对象列表?

    我在我的项目中使用 Spring Data JPA 我正在演奏数百万张唱片 我有一个要求 我必须获取各种表的数据并构建一个对象 然后将其绘制在 UI 上 现在如何实现我的 Spring 数据存储库 我读到它可以通过命名本机查询来实现 如果指
  • 无法在 Java/Apache HttpClient 中处理带有垂直/管道栏的 url

    例如 如果我想处理这个网址 post new HttpPost http testurl com lists lprocess action LoadList 401814 1 Java Apache 不允许我这么做 因为它说竖线 是非法的
  • 避免 Java 中的重复导入:继承导入?

    有没有办法 继承 导入 Example 常见枚举 public enum Constant ONE TWO THREE 使用此枚举的基类 public class Base protected void register Constant
  • 使用Java绘制维恩图

    我正在尝试根据给定的布尔方程绘制维恩图 例如 a AND b AND c我想在 Android 手机上执行此操作 因此我需要找到一种使用 Java 来执行此操作的方法 我找到了一个完美的小部件 它可以完成我在这方面寻找的一切布尔代数计算器
  • 如何从 Ant 启动聚合 jetty-server JAR?

    背景 免责声明 I have veryJava 经验很少 我们之前在 Ant 构建期间使用了 Jetty 6 的包装版本来处理按需静态内容 JS CSS 图像 HTML 因此我们可以使用 PhantomJS 针对 HTTP 托管环境运行单元
  • 如何处理 StaleElementReferenceException

    我正在为鼠标悬停工作 我想通过使用 for 循环单击每个链接来测试所有链接的工作条件 在我的程序中 迭代进行一次 而对于下一次迭代 它不起作用并显示 StaleElementReferenceException 如果需要 请修改代码 pub
  • 源值 1.5 的错误已过时,将在未来版本中删除

    我使用 scala maven plugin 来编译包含 scala 和 java 代码的项目 我已经将源和目标设置为1 7 但不知道为什么maven仍然使用1 5 这是我在 pom xml 中的插件
  • ArrayList.clear() 和 ArrayList.removeAll() 有什么区别?

    假如说arraylist定义为ArrayList

随机推荐

  • 计时器刻度不增加时间间隔的值

    我想增加计时器滴答事件的值 但它没有增加 不知道我忘记了什么 它只显示1
  • 异步任务“堵塞”

    最近 我开始尝试大规模抓取网站以进行存档 我认为让多个 Web 请求异步工作以加快速度是一个好主意 10 000 000 个页面绝对需要存档 因此我冒险进入并行性的严厉女主人 三分钟后我开始想知道为什么我正在创建的任务 通过Task Fac
  • 在不使用 EF 的情况下在 appsettings.json 中获取多个连接字符串

    刚刚通过迁移我开发的当前 MVC Net 应用程序开始使用 Net Core RC2 在我看来 由于 appsettings json 处理配置的方式 如果我有多个连接字符串 我要么必须使用 EF 来检索连接字符串 要么必须创建为每个连接字
  • 为什么 Promise 的“then()”处理程序会立即执行?

    我想更彻底地了解 Promise 在 JavaScript 中的工作原理 我尝试了以下代码 function delay timeout return new Promise function resolve reject setTimeo
  • 如何在Flutter gridview中从右向左填充数据

    我试图从右到左填充网格视图数据 因为应用程序是阿拉伯语 并且一切都是 RTL Here is what I want 我正在使用 Stream 生成器来填充数据和以下 Gridview 小部件 Widget productGrid List
  • MySQL - 将两列拆分为两个不同的行

    如果这是一个愚蠢的问题 我不知道要创建这个抱歉 我有一个表 两个团队和总观察 稍后我将在不同的地方使用此信息 所以我的想法是将这两列连接在一列中 但两个不同的行 HomeTeam AwayTeam Totalwatch A B 100 A
  • 反序列化包含字典的对象列表

    我见过很多例子 似乎表明我所做的事情应该有效 但无论出于何种原因 它都不起作用 我正在尝试反序列化对象的集合 其中一个属性是字典 如下所示 class Program static void Main string args var jso
  • min - 子项设置为位置的高度:绝对

    我有一个容器 div 其中一个子 div 设置为相对于其父级的绝对位置 容器 div 有其最小高度设置 但是当子 div 的高度超出父级的高度时 父级不会拉伸 这是由于孩子的绝对定位所致 有什么想法可以让父母随着孩子身高的增加而伸展身体吗
  • 使用命令行工具将 JSON 数组拆分为多个文件

    假设我们有一个长度为 5 的 JSON 数组 我们想使用 Linux 命令行工具将该数组拆分为多个长度为 2 的数组 并将分组的项保存到不同的文件中 我尝试使用jq and split工具 我对任何可以从 bash 脚本执行的方法都很满意
  • 仅从 Twitter API 请求地理标记状态

    我如何要求 twitter API 只提供地理标记状态 我目前正在过滤 但更加 友好 会更有意义 似乎你应该能够用流 API 和位置过滤器 只需将边界框设置为覆盖整个地球即可 正如跟踪参数一样 查询受跟踪限制 如跟踪限制中所述 和访问角色
  • 如何使用 BigQuery 补丁?

    BigQuery API 文档中有一个名为 patch 的方法 我希望我可以使用它来更改现有表的架构 不幸的是 bq 不支持它 但根据他们的网站 你可以尝试一下https developers google com bigquery doc
  • 在活动之间从列表视图传递数据到另一个活动

    我正在尝试将数据从这个主要活动传递到另一个活动 我成功地在活动之间发送数据 就像从编辑文本到下一个活动的数据一样putExtra and GetExtra方法并作为意图传递 但我在这项特定任务中面临挑战 将数据从列表视图发送到普通活动 数据
  • 将函数应用于 pandas Python 中的每一行时出现数据转换错误

    我在 python 的 pandas 中有一个数据框 类似于这样的东西 contest login count contest participation count ipn ratio 0 1 1 0 000000 1 3 3 0 083
  • Linux 中的“find -exec”shell 函数

    有没有办法得到find执行我在 shell 中定义的函数 例如 dosomething echo Doing something with 1 find exec dosomething 其结果是 find dosomething No s
  • 在android中实现徒手裁剪

    我正在尝试使用画布在 Android 中实现徒手裁剪 我用drawPath并将其存储在列表中并将其绘制在画布路径绘图中 像这样 但现在我想用这段代码使该路径中的所有像素都位于侧面区域 但我不知道该怎么做 public Bitmap getB
  • 文件上传作为带有其他字段的表单的一部分

    我有一个 ASP NET MVC 网站 我需要一个页面 用户必须在其中输入多个字段 包括图像文件 我可以找到很多很多使用 MVC 上传文件的参考资料 但他们不会将文件作为包含其他字段的表单的一部分上传 理想情况下 字段和文件将发送到单个控制
  • 单击启动器图标时恢复上次活动

    正如我所看到的 当单击启动器图标时 大多数应用程序都会恢复上次活动 然而 这似乎不是默认行为 在我的应用程序启动器活动中 单击启动器图标时总是启动 当单击启动器图标并且应用程序已经运行时 如何配置我的应用程序以恢复上次活动 Problem
  • python 检查序列中的位是真还是假

    我想知道序列中的某个位是 1 还是 0 真或假 如果我有 11010011 的一些子序列 我如何检查第四个位置是 True 还是 False example 10010101 4th bit gt False 10010101 3rd bi
  • 为派生类提供模板专业化的最简单方法

    我有以下场景 class my base class my derived public my base template
  • Collections.binarySearch() 与 List indexOf()

    我有超过 37K 项的列表 并且我已经实施了hashCode equals 所以我想知道Collections binarySearch 可以帮助提高性能并且比indexOf method 如果您的收藏已排序 binarySearch 将是