首页 > 技术文章 > 数组工具类(Arrays):java.util 附带直接排序、冒泡排序、二分查找法

momobao 2016-08-31 15:36 原文

//数组工具类(Arrays):java.util

排序(选择排序) sort    int [] i = Arrays.sort(数组);升序

二分查找法       binarySearch   int i = Arrays.binarySearch(数组,要查询的数);//找到返回所在的数组的索引值,找不到则返回负数

遍历数组   String num = Arrays.toString(arr);


//直接排序(选择排序)降序
for(int i = 0;i<arr.length-1;i++){
    for(int j = i+1;j<arr.length;j++){
        if(arr[i]<arr[j]){
            int temp = arr[i];
            arr[i] = arr [j];
            arr[j] = temp;
        }
    }
} 

//冒泡排序 升序
for(int i = 0;i < arr.length-1;i++){
    for(int j = 0;j < arr.length - 1 - i;j++){
        if(arr [j] > arr[j + 1]){
            int temp = arr[j];
            arr[j] = arr [j + 1];
            arr[j+1] = temp;
        }
    }
}
二分查找法 (在排好顺序的数组上进行查找数据)
int arr [] = new int [5]; int min = 0; int max = arr.length - 1; int mid = (min + max)/2; //tager是要查找的数 while(true){ if(tager > mid){ min = mid + 1; }else if(tager < mid){ max = mid -1; }else{ return mid; } if(min > max){ return -1; } mid = (max + min )/2; }

 

推荐阅读