package com.ithyb.demo;
import java.util.Arrays;
public class jianDanSF {
public static void main(String[] args) {
int[] aa = {1, 45, 5, 68, 4, 48, 66, 88, 28, 12};
Bubblesort(aa);
System.out.println(Dichotomysearch(aa, 12));
// System.out.println(aa.length);
// int o1 = Integer.MAX_VALUE;
// System.out.println(o1);
// System.out.println(o1>>>1);
}
/**
* 冒泡排序
*
* @param A
*/
public static void Bubblesort(int[] A) {
int temp;
for (int i = 0; i < A.length - 1; i++) {
for (int j = 0; j < A.length - 1 - i; j++) {
if (A[j] > A[j + 1]) {
temp = A[j];
A[j] = A[j + 1];
A[j + 1] = temp;
}
}
}
System.out.println("冒泡排序" + Arrays.toString(A));
}
/**
* 二分查找
*/
public static int Dichotomysearch(int[] A, int B) {
Bubblesort(A);
int min = 0;
int max = A.length - 1;
while (min <= max) {
int among = (min + max) >>> 1;//向右移动一位相当于 除以2向下取整
if (B > A[among]) {
min = among + 1;
} else if (B < A[among]) {
max = among - 1;
} else {
return among;
}
}
return -1;
}
}
第一天学习,冒泡排序很简单,二分查找要先进行排序。