91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中怎么實現一個二分查找法算法

發布時間:2021-07-01 15:00:26 來源:億速云 閱讀:152 作者:Leah 欄目:大數據

本篇文章為大家展示了java中怎么實現一個二分查找法算法,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

二分查找法有兩種實現方式while遞歸方法實現

public class maxtest {	public static void main(String[] args) {		//###################二分查找法start###################//int[] arrays = {113,16,24,22,218,25,23,8,13,6,215,123,218,113,14,222,28,213,4,2,17,5,12,117,15,122,18,26,214,212,117,216};		int temporary;		for (int j = 0; j < arrays.length-1; j++) {			for (int i = 0; i < arrays.length; i++) {				if (arrays.length-1 == i) {					break;
				}else{					if (arrays[i] > arrays[i+1]) {
						temporary = arrays[i];
						arrays[i] = arrays[i+1];
						arrays[i+1] = temporary;
					}
				}
			}
		}		for (int i = 0; i < arrays.length; i++) {
			System.out.print(arrays[i]+" ");
		}
		System.out.println("\n調用遞歸方法結果:"+binarySearch(arrays,0,arrays.length-1,24));//遞歸方法調用
		System.out.println("\n調用while方法結果:"+binarySearch(arrays,24));//while方法調用//###################二分查找法start###################//
	}	
	
	//二分查找法遞歸實現public static int binarySearch(int[] arrays, int start, int end,int des){		int mid=(start+end)/2;		if (arrays[mid] == des) {			return mid;
		}		if (start >= end) {			return -1;
		}else if (arrays[mid] < des) {			return binarySearch(arrays, mid+1, end, des);
		}else if(arrays[mid] > des){			return binarySearch(arrays, start, mid-1, des);
		}		return -1;
	}  
	
	//二分查找法while實現public static int binarySearch(int[] arrays, int des){		int mid=arrays.length/2;		if (arrays[mid] == des) {			return des;
		}int low = 0;   int high = arrays.length-1;   while(low <= high) {   int middle = (low + high)/2;   if(des == arrays[middle]) {   return middle;   
            }else if(des <arrays[middle]) {   
                high = middle - 1;   
            }else {   
                low = middle + 1;   
            }  
        }  return -1;  
	}

結果如下:

2 4 5 6 8 12 13 14 15 16 17 18 22 23 24 25 26 28 113 113 117 117 122 123 212 213 214 215 216 218 218 222 調用遞歸方法結果:14調用while方法結果:14

示意圖

java中怎么實現一個二分查找法算法

上述內容就是java中怎么實現一個二分查找法算法,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

门头沟区| 会昌县| 宁强县| 柘荣县| 闵行区| 大城县| 迁安市| 公安县| 顺义区| 黄梅县| 旬阳县| 芜湖市| 兴海县| 平谷区| 青田县| 泗洪县| 广丰县| 辉县市| 枝江市| 措美县| 庆城县| 元朗区| 贵定县| 南岸区| 深圳市| 南召县| 静安区| 视频| 花莲县| 正安县| 胶州市| 双城市| 贵南县| 仙桃市| 石家庄市| 环江| 苏尼特左旗| 平武县| 沛县| 江源县| 高唐县|