700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 冒泡排序java实现 二分查找java实现

冒泡排序java实现 二分查找java实现

时间:2019-11-22 15:52:49

相关推荐

冒泡排序java实现 二分查找java实现

以下是经典排序算法之一的冒泡排序实现代码和二分查找算法的简单实现/*** @author CJH* @date /4/29* @desc**/public class BinarySearchAndBubbling {public static void main(String[] args){int array[] = new int[]{11,3,79,90,34,12,98,1002,38,22,77,10,9,56,50,49};//先冒泡排序 --小到大bubbling(array);System.out.print("排序后:");for(int i :array){System.out.print(i+",");}System.out.println("");//查找77System.out.println(binarySearch(array, 77));}/*** 冒泡排序* @param array*/public static void bubbling(int[] array){for(int i=0; i<array.length; i ++){for(int k=0; k <array.length-i-1; k ++){if(array[k] >array[k+1]){//两两对比,调换位置int temp = array[k];array[k] = array[k+1];array[k+1] = temp;}}}}/*** 二分查找* @param array* @param key* @return*/public static boolean binarySearch(int[] array, int key){boolean result = false;int low = 0; //第一个下标int high = array.length - 1;//最后一个下标int middle = 0;//防越界if (key < array[low] || key > array[high] || low > high) {return result;}int num =0;while (low <= high) {num ++;middle = (low + high) / 2;if (array[middle] == key) {result = true;break;} else if (array[middle] < key) {low = middle + 1;} else {high = middle - 1;}}System.out.println("查找的次数:"+num);return result;}}

运行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。