使用Collections.binarySearch在Java中执行二进制搜索
可以使用java.util.Collections.binarySearch()方法在Java中执行二进制搜索。该方法需要两个参数,即要在其中执行二进制搜索的列表和要搜索的元素。如果元素在列表中,则返回该元素的索引;如果元素不在列表中,则返回-1。
演示此的程序如下所示-
示例
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Demo {
public static void main(String args[]) {
List aList = new ArrayList();
aList.add("James");
aList.add("George");
aList.add("Bruce");
aList.add("Susan");
aList.add("Martha");
Collections.sort(aList);
System.out.println("The sorted ArrayList is: " + aList);
int index = Collections.binarySearch(aList, "Martha");
System.out.println("Element Martha is at index: " + index);
index = Collections.binarySearch(aList, "Amy");
System.out.println("Element Amy is at index: " + index);
}
}上面程序的输出如下-
The sorted ArrayList is: [Bruce, George, James, Martha, Susan] Element Martha is at index: 3 Element Amy is at index: -1
现在让我们了解上面的程序。
创建ArrayListaList。然后,使用ArrayList.add()将元素添加到ArrayList中。ArrayList元素使用Collections.sort()进行排序。演示这的代码片段如下-
List aList = new ArrayList();
aList.add("James");
aList.add("George");
aList.add("Bruce");
aList.add("Susan");
aList.add("Martha");
Collections.sort(aList);显示排序后的ArrayList,然后使用Collections.binarySearch()查找LinkedList中的元素“Martha”和“Amy”是否可用。演示这的代码片段如下-
System.out.println("The sorted ArrayList is: " + aList);
int index = Collections.binarySearch(aList, "Martha");
System.out.println("Element Martha is at index: " + index);
index = Collections.binarySearch(aList, "Amy");
System.out.println("Element Amy is at index: " + index);热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下