黑马程序员技术交流社区

标题: 黑马的新人求知 [打印本页]

作者: 海阔天空监管科    时间: 2015-4-24 19:09
标题: 黑马的新人求知
谁能把几个排序的方式给我代码写出来,不生感激涕零,作为新人一定会努力,为黑马争光。
为中国的硅谷服务。

作者: 优质码农    时间: 2015-4-24 19:09
class ArrayTools {
        //选择排序
        public static void selectSort(int[] arr) {
                //外循环,控制比较的次数
                for (int x = 0; x < arr.length-1; x++) {
                        //内循环,控制参数比较的元素
                        for (int y = x+1; y < arr.length; y++) {
                                if (arr[x] > arr[y]) {
                                        int temp = arr[x];
                                        arr[x] = arr[y];
                                        arr[y] = temp;
                                }
                        }
                }
        }
       
        //冒泡排序
        public static void bubbleSort(int[] arr) {
                //外层循环,控制比较的次数
                for (int x = 0; x < arr.length-1; x++) {
                        //内循环,控制参数比较的元素
                        //y < arr.length-1  防止角标越界异常
                        //y < arr.length-1 -x 避免重复比较
                        for (int y = 0; y < arr.length-1-x; y++) {
                                if (arr[y] > arr[y+1]) {
                                        int temp = arr[y];
                                        arr[y] = arr[y+1];
                                        arr[y+1] = temp;
                                }
                        }
                }
        }
       
        // 二分查找法:
        public static int binarySearch(int[] arr, int number) {
                //创建三个变量, 用来记录min,max,mid
                int min = 0;
                int max = arr.length-1;
                int mid = (min+max)/2;
                //循环查找指定值的位置
                while( arr[mid] != number ){
                        if (arr[mid] > number) {
                                //范围在左边,更新最大值
                                max = mid-1;
                        } else {
                                //范围在右边, 更新最小值
                                min = mid+1;
                        }
                        //判断查找范围
                        if (min > max) {
                                mid = -1;//没找到
                                break;
                        }
                        //更新中间值  mid
                        mid = (min + max)/2;
                }
                return mid;
        }
}

作者: yuqilin    时间: 2015-5-9 17:49
优质码农 发表于 2015-4-24 19:09
class ArrayTools {
        //选择排序
        public static void selectSort(int[] arr) {


作者: rolan    时间: 2015-5-23 21:15
优质码农 发表于 2015-4-24 19:09
class ArrayTools {
        //选择排序
        public static void selectSort(int[] arr) {

赞一个。。。。
作者: rolan    时间: 2015-5-23 21:18
优质码农 发表于 2015-4-24 19:09
class ArrayTools {
        //选择排序
        public static void selectSort(int[] arr) {

赞一个。。。。。。
作者: 小麻    时间: 2015-5-24 23:00
     赞一个
作者: LeoLi    时间: 2015-6-13 23:32
1、Lucus来签到啦!
2、大概哪个时间点逛论坛呢? 晚上11点多
3、走黑马流程了吗?到哪一块了? 前三步
4、今天的任务完成多少?完成




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2