冒泡排序 + 二分法
package com.atguigu.java; public class Bubblesort { public static void main(String[] args){ int arr[] = new int[]{-12,-52,52,24,65,94}; for(int i = 0;i < arr.length - 1;i++){ //冒泡排序:先找出最大值放最后,再找第二的放倒数第二....... for(int j = 0;j < arr.length - 1 - i;j++){ if(arr[j+1] < arr[j]){ int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } for(int i = 0;i < arr.length;i++){ System.out.println(arr[i] + " "); } boolean isFlag = true; int dest = 94; int head = 0; int end = arr.length - 1; while(end >= head){ int middle = (end + head)/2; if(dest == arr[middle]){ System.out.println("找到了,位置为:" + middle); isFlag = false; break; }else if(dest < arr[middle]){ end = middle - 1; }else{ head = middle + 1; } } if(isFlag == true){ System.out.println("找不到"); } } }
-----yzyjava

浙公网安备 33010602011771号