我们可以使用java编写程序来使用线程进行二进制搜索。 一个用于分割数组的线程和一个用于对数组进行排序的线程。
答案 0 :(得分:2)
划分数组只包括拾取中点。为什么你需要一个单独的线程?
此外,您不应该在二进制搜索中对数组进行排序 - 先决条件是您有一个已排序的数组。
您的意思是询问并行化排序算法吗?如果是这样,mergesort和quicksort等算法可以并行化,因为它们使用分而治之的范例,但由于每一半都执行相同类型的操作,您应该意识到并行化只会在您工作时受益具有多个核心的系统。
答案 1 :(得分:2)
不确定。假设数组已排序,从概念上将数组拆分为与线程一样多的部分,并让每个线程对每个部分执行二进制搜索。