黑马程序员技术交流社区

标题: 排序<冒泡排序和选择排序> 通过视频学习的java基础知识,和大家分享。 [打印本页]

作者: 15173139267    时间: 2015-9-15 23:22
标题: 排序<冒泡排序和选择排序> 通过视频学习的java基础知识,和大家分享。
1.冒泡排序<比较相邻元素的大小>
public class SortDemo {
        public static void main(String[] args) {
                int[] arr  = {2,6,5,1,7,3};
                //排序前
                budderSort(arr);
                //排序后
                showDescSort(arr);
                budderSort(arr);
        }
        /**
         * 冒泡排序,比较相邻元素大小.
         *
         */
        public static void showDescSort(int[] arr){
                 for (int i = 0; i < arr.length-1; i++) {
                         for (int j = 0; j < arr.length-i-1; j++) {
                                 int temp = 0;
                                 if(arr[j+1]>arr[j]){
                                         temp = arr[j+1];
                                         arr[j+1]=arr[j];
                                         arr[j] = temp;
                                 }
                        }
                }
                 
        }
        /**
         * 简单的对数组进行排序
         *
         */
        public static void budderSort(int[] arr){
                System.out.print("[");
                for (int i = 0; i < arr.length; i++) {
                        if(i != arr.length-1)
                        System.out.print(arr[i]+",");
                        else
                        System.out.println(arr[i]+"]");
                }
        }
}

2.选择排序
public class SortDemo {
        public static void main(String[] args) {
                int[] arr  = {2,6,5,1,7,3};
                //排序前
                budderSort(arr);
                //排序后
                showAscSort(arr);
                budderSort(arr);
        }
        /**
         * 选择排序:从第一个元素开始和数组所有的元素进行比较,和第一个元素进行比较,将最小值交换到第一位.
         *
         */
        public static void showAscSort(int[] arr){
                for (int i = 0; i < arr.length-1; i++) {
                        for (int j = i+1; j < arr.length; j++) {
                                        int temp = 0;
                                        if(arr[i]>arr[j]){
                                                temp = arr[i];
                                                arr[i]=arr[j];
                                                arr[j]=temp;
                                        }
                        }
                }
        }
        public static void budderSort(int[] arr){
                System.out.print("[");
                for (int i = 0; i < arr.length; i++) {
                        if(i != arr.length-1)
                        System.out.print(arr[i]+",");
                        else
                        System.out.println(arr[i]+"]");
                }
        }
}






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