A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luogang241 初级黑马   /  2016-9-24 20:20  /  584 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

选择排序
//选择排序
public static void selectSort(int[] 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;
                        }
                }
        }
}


冒泡排序
//冒泡排序
public static void bubbleSort(int[] arr) {
        //功能
        //外层循环用来控制数组循环的圈数
        for (int i = 0; i < arr.length-1; i++) {
                //j < arr.length-1 为了避免角标越界
                //j < 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;
                        }
                }
        }
}
二分查找
//二分查找法(折半查找法)
public static int halfSearch(int[] arr, int number) {
        //定义3个变量,用来记录min, min, mid的位置
        int min = 0;
        int max = arr.length-1;
        int mid = (min+max)/2;
        //判断mid位置上的原始与 number的值 是否相同
        while (arr[mid] != number) {
                //没找了, 更新范围,继续比较
                //更新范围
                if (arr[mid] > number) {
                        //在左边
                        max = mid-1;
                } else {
                        //在右边
                        min = mid+1;
                }
                //使用if语句判断,查询范围是否小于0个元素
                if ((max - min) < 0){
                        //没有找到
                        return -1;
                }
                //更新mid值
                mid = (min+max)/2;
        }
        //找到了 ,返回mid的位置
        return mid;
}

4 个回复

倒序浏览
mark一下,学了插入排序还有希尔排序。二分法还没有看
回复 使用道具 举报
谢谢楼主,学习了
回复 使用道具 举报
总结的可以,学习下!
回复 使用道具 举报
案例都有的啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马