溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

binarySearch在java中如何使用

發(fā)布時(shí)間:2023-04-20 10:36:25 來(lái)源:億速云 閱讀:124 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹“binarySearch在java中如何使用”的相關(guān)知識(shí),小編通過(guò)實(shí)際案例向大家展示操作過(guò)程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“binarySearch在java中如何使用”文章能幫助大家解決問(wèn)題。

1.概念

通過(guò)二分法在已經(jīng)排好序的數(shù)組中查找指定的元素,并返回該元素的下標(biāo)。

2.使用注意

此法為二分搜索法,故查詢前需要用sort()方法將數(shù)組排序,如果數(shù)組沒(méi)有排序,則結(jié)果是不確定的。如果數(shù)組中含有多個(gè)指定值的元素,則無(wú)法保證找到的是哪一個(gè)。

3.返回值

該方法的返回值類型為整型,具體返回值具體分為以下兩種情況:

(1)如果數(shù)組中存在該元素,則會(huì)返回該元素在數(shù)組中的下標(biāo)

(2)如果數(shù)組中不存在該元素,則會(huì)返回-(插入點(diǎn) + 1)

這里的插入點(diǎn)具體指的是:如果該數(shù)組中存在該元素,那個(gè)元素在該數(shù)組中的下標(biāo)

4.實(shí)例

public static void main(String[] args) {
List<Integer> lists = new ArrayList<Integer>();
lists.add(3);
lists.add(6);
lists.add(8);
lists.add(7);
lists.add(1);
// 原來(lái)的集合
System.out.println("原來(lái)的集合:");
for (Integer str : lists) {
System.out.print(str + " ");
}
 
// 對(duì)集合進(jìn)行排序
Collections.sort(lists);
System.out.println("\n排序后的集合:");
for (Integer str : lists) {
System.out.print(str + " ");
}
 
// 使用binarySearch方法查找集合中的元素
int i = Collections.binarySearch(lists, 2);
System.out.println("\n2所在的位置:" + i);
 
}

關(guān)于“binarySearch在java中如何使用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI