一、冒泡算法:(经典考题,你必须会)
public class BubbleTest { /** * @param args */ public static void main(String[] args) { int array[]={33,22,15,89,55}; sort(array); for(int i=0;i<array.length;i++) { System.out.println(array[i]); } int ret=binaryFind(array,2); System.out.println("------------:"+ret); } /** * 冒泡算法 * @param array 无序数组 */ public static void sort(int []array) { for(int i=0;i<array.length-1;i++) { for(int j=0;j<array.length-i-1;j++) { if(array[j]>array[j+1]) { int tmp=array[j]; array[j]=array[j+1]; array[j+1]=tmp; } } } } /** * 二分查找 * @param array 升序排列的数组 * @param value * @return */ public static int binaryFind(int []array,int value) { int low=0; int height=array.length-1; while(low<=height) { int middle=(low+height)/2; if(array[middle]<value) { low=middle+1; } else if(array[middle]>value) { height=middle-1; } else { return middle; } } return -1; } }
邮箱:zz7zz7zz@163.com