使用线程编写二进制搜索程序

时间:2010-02-10 15:26:39

标签: java

我们可以使用java编写程序来使用线程进行二进制搜索。 一个用于分割数组的线程和一个用于对数组进行排序的线程。

2 个答案:

答案 0 :(得分:2)

划分数组只包括拾取中点。为什么你需要一个单独的线程?

此外,您不应该在二进制搜索中对数组进行排序 - 先决条件是您有一个已排序的数组。

您的意思是询问并行化排序算法吗?如果是这样,mergesort和quicksort等算法可以并行化,因为它们使用分而治之的范例,但由于每一半都执行相同类型的操作,您应该意识到并行化只会在您工作时受益具有多个核心的系统。

答案 1 :(得分:2)

不确定。假设数组已排序,从概念上将数组拆分为与线程一样多的部分,并让每个线程对每个部分执行二进制搜索。