這篇文章主要介紹了怎么在Java的二分查找算法中使用遞歸的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇怎么在Java的二分查找算法中使用遞歸文章都會(huì)有所收獲,下面我們一起來看看吧。
創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括武山網(wǎng)站建設(shè)、武山網(wǎng)站制作、武山網(wǎng)頁制作以及武山網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,武山網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到武山省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1.遞歸概念
程序調(diào)用自身的編程技巧稱為遞歸。將大規(guī)模的問題變成小規(guī)模的問題,問題不變,規(guī)模變小。
2.兩個(gè)前提
終止條件——當(dāng)一定條件滿足時(shí),函數(shù)返回特定值,不再遞歸調(diào)用
遞歸調(diào)用——函數(shù)調(diào)用自身,其輸入值更接近終止條件
3.二分查找的遞歸實(shí)例
/** * 遞歸實(shí)現(xiàn)二分查找 * @param arr * @param left * @param right * @param val * @return */ private static int binarySearch(int[] arr, int left, int right, int val) { if (val < arr[left] || val > arr[right] || left > right) { return -1; } int middle = (left + right)/2; if(val < arr[middle]){ return binarySearch (arr,0,middle-1,val); } if(val > arr[middle]){ return binarySearch (arr,middle+1,right,val); }else{ return middle; } }
關(guān)于“怎么在Java的二分查找算法中使用遞歸”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“怎么在Java的二分查找算法中使用遞歸”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。