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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 晓恣晴空 中级黑马   /  2014-9-22 16:18  /  1094 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

自学使用,冒泡排序与选择排序
public class Test01 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                //定义两个数组
                int[] arr1={25,56,99,45,30,22};
               
                int[] arr2={250,560,990,450,300,220};
                //调用 冒泡排序方法
                bubbleSort(arr1);
               
                System.out.println();
                //调用 选择排序方法
                selectSort(arr2);

        }

        /*
         * 排序
         */
        public static void swap(int[] arr, int x, int y) {
                /*
                 * 通过第三个辅助值进行数据位置的改变
                 */
                int temp = arr[x];
                arr[x] = arr[y];
                arr[y] = temp;
        }

        /*
         * 输出
         */
        public static void sop(int[] arr) {
                for(int i=0;i<arr.length;i++){
                        /*
                         * 通过判断是否是最后一个值,进而确定是否添加“,”
                         */
                        if(i!=arr.length-1)
                                System.out.print(arr[i]+",");
                        else
                                System.out.print(arr[i]);
                }
        }

        /*
         * 冒泡排序。
         */
        public static void bubbleSort(int[] arr) {
                for (int x = 0; x < arr.length - 1; x++) {
                        for (int y = 0; y < arr.length - 1 - x; y++) {
                                if (arr[y] > arr[y + 1]) {
                                        swap(arr, y, y + 1);
                                }
                        }
                }
                sop(arr);
        }

        /*
         * 选择排序。
         */
        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]) {
                                        swap(arr, x, y);
                                }
                        }
                }
                sop(arr);
        }
}

评分

参与人数 2黑马币 +14 收起 理由
wszbw + 13 赞一个!
tiangong + 1 赞一个!

查看全部评分

4 个回复

倒序浏览
:)可以,复习一下
回复 使用道具 举报
两种排序 理解 循环比较方式 之后 就是叮 咣 一顿神敲  敲完 咔嚓 N个 错误  再叮咣 一顿改 咔嚓  OK 出结果了 结果也对了 。  恭喜 以过关 请通往下一关
回复 使用道具 举报
好高端啊,顶一个!!
回复 使用道具 举报
学习了,我也在复习基础
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马