我試圖創建一個迭代二進制搜索功能作爲一部分工作。 我試過尋找類似的問題,但他們往往都是整數數組而不是字符串數組。 我認爲我的代碼的問題是與字符串比較運算符不正確執行。 如果我有一些基本的測試數據運行的代碼我得到一個「顯示java.lang.NullPointerException」 如果有人可以看看我的代碼,並指出我要去哪裏錯了,它會極大地讚賞。謝謝! public int returnIndex
我已經編寫了這種二分查找方法,該方法返回Book對象的索引,其中book id與輸入的book id相匹配。 如何將其轉換爲一種通用方法,將對象和搜索輸入的另一種類型作爲參數並對該輸入進行搜索?有什麼辦法可以概括它嗎? public static int bSearch(ArrayList<Book> a, String input)
{
int low = 0;
我正在切換到Python並正在練習一些基本的邏輯流程,並且我編寫了二進制搜索功能。有沒有更優雅的寫法呢?例如,我不喜歡如何將最初的格言設置爲10 ** 99(這只是包含任何實際列表大小的一種方式)。 def binary_search(val, arr, minum=0, maxim=10**99):
if val < arr[0] or val > arr[-1]:
ret
public static boolean binarySearch(ArrayList<Student> students, int search) {
int first = 0;
int last = students.size() - 1;
int mid;
while (first <= last) {
mid = first + (l