我不明白集合通常如何使用。當我發現什么是二分搜索并查找 java 中的實現時,困惑就開始了。我發現的第一個是這個https://www.javatpoint.com/binary-search-in-java,但我也在 Geeksforgeeks 上發現了這個: https: //www.geeksforgeeks.org/collections-binarysearch-java-examples/。它們幾乎具有相同的輸出,顯然第二個更簡單,但我不太明白第一個鏈接的意義是什么。為了概括所有集合,是否存在使用集合不利的情況?很抱歉我的問題不能更具體,或者如果問題沒有意義,但我的理解還不足以使其更具體。
2 回答

ABOUTYOU
TA貢獻1812條經驗 獲得超5個贊
java.util.Collections是一個庫類,包含處理Collection類型的實用方法。也就是說,它具有解決常見問題或做有用事情的有用方法,因此您不必編寫自己的代碼來完成這些任務。您的第一個鏈接顯示了從頭開始的二分搜索算法的實現,而第二個鏈接顯示了如何使用實用程序方法,這可以節省編寫您自己的實現。Collections.binarySearch
第一個鏈接可能對教育目的有用(因為學生通常必須學習二分搜索算法),或者對于需要使二分搜索適應不同問題的人有用。例如,二分查找的變體可用于查找目標數字的第一次出現,或大于或等于目標的最小數字,但該Collections.binarySearch
方法不能執行這些操作,因此您可能必須編寫一個自己實施。

冉冉說
TA貢獻1877條經驗 獲得超1個贊
您發布的第一個鏈接實際上解釋了二分搜索的工作原理,給出了其背后的理論,以及如何自己實現它。這有助于理解二分搜索的工作原理和原因。
然而,Java 語言有一個用于集合(地圖、列表等)的 util 庫,其中已經實現了其中一些簡單的方法。第二個鏈接解釋了如何使用該庫。
添加回答
舉報
0/150
提交
取消