首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用多线程的二进制搜索

使用多线程的二进制搜索
EN

Stack Overflow用户
提问于 2013-10-07 03:55:27
回答 2查看 3.9K关注 0票数 3

我想用Java制作一个程序,在动态采集的数组中执行二进制搜索,如何使用multithreading.So从程序开始?

EN

回答 2

Stack Overflow用户

发布于 2013-10-07 03:56:50

二进制搜索不适合多线程/并行化。几乎没有并行加速比的潜力。

奥托..。如果您只是想知道如何对已排序的元素数组进行并行二进制搜索,那么提供如下条件:

  • 搜索线程中没有一个修改数组,并且
  • 数组被安全地发布(相对于搜索线程),

多个线程的常规二进制搜索将是线程安全的.

票数 4
EN

Stack Overflow用户

发布于 2013-10-07 04:02:44

与其试图使搜索本身是多线程的,不如让调用机制被多线程化,同时执行多个搜索,这可能会更有益处。根据您正在做的事情,您可以从Java容器中免费获得它(例如,对Servlet的每个HTTP请求都已经获得了它自己的线程,因此您不必做任何额外的事情)。

此外:“过早优化是万恶之源”--唐纳德·克努斯

首先,我建议保持简单,并遵循如下所示的示例:algorithm,然后找出您试图优化的内容(如果有的话),并酌情继续。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19216807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档