【題目描述】
對於乙個有序陣列,我們通常採用二分查詢的方式來定位某一元素,請編寫二分查詢的演算法,在陣列中查詢指定元素。
給定乙個整數陣列a及它的大小n,同時給定要查詢的元素val,請返回它在陣列中的位置(從0開始),若不存在該元素,返回-1。若該元素出現多次,請返回第一次出現的位置。
【測試樣例】
[1,3,5,7,9],5,3
【返回結果】
【分析】
3個需要注意的題目問題:
(1)有序陣列;
(2)二分查詢;
(3)若元素出現多次,要返回第一次出現的位置。
【solultion】
class binarysearch else if (val > a[mid]) else
}if (a[high] == val)
return -1;
}};
二分法查詢某個數第一次出現位置
對於乙個有序陣列,我們通常採用二分查詢的方式來定位某一元素,請編寫二分查詢的演算法,在陣列中查詢指定元素。給定乙個整數陣列a及它的大小n,同時給定要查詢的元素val,請返回它在陣列中的位置 從0開始 若不存在該元素,返回 1。若該元素出現多次,請返回第一次出現的位置。include include ...
第一次盲寫二分查詢的打臉
public static int dosearch int arry,int target int low index 0 int high index arry.length 1 int mid index while low index high index if target mid val...
第一次出現一次的字元
題目 在字串中找出第乙個出現一次的字元。如輸入 abaccdeff 則輸出 b 分析 最直觀的解法從頭掃瞄這個字串中的每乙個字元。當訪問到某個字元的時候拿這個字元和後面的字元相比較,如果在後面沒有發現重複的字元,那該字元就是只出現一次的字元。如果字串有n個字元,每乙個字元可能與後面的o n 個字元比...