黑马程序员技术交流社区

标题: 数组排序 [打印本页]

作者: dengxing    时间: 2015-5-7 10:55
标题: 数组排序
/*
对数组进行排序
主要为冒泡排序和选择排序
*/

class SortTest
{
        public static void main(String[] args)
        {
                int[] arr = {5,2,4,9,6,4,1};
                print(arr);//遍历数组
                bubbleSort(arr);//对指定数组进行排序
                print(arr);//再次遍历数组
        }
        //最值出现在最左边的位置,选择排序
        public static void sort(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++ )
                {
                        for (int y=0;y<arr.length-x-1 ;y++ )//-x: 是让每次循环比较的次数减少,-1是为了防止角标越界
                        {
                                if (arr[y]>arr[y+1])
                                {
                                        int temp = arr[y];
                                        arr[y]=arr[y+1];
                                        arr[y+1]=temp;
                               
                                }
                        }
                }
       
        }
        //定义一个函数,用来遍历一个数组
        public static void print(int[] arr)
        {
                System.out.print("[");
                for (int x=0;x<arr.length ;x++ )
                {
                        if(x!=arr.length-1)
                                System.out.print(arr[x]+", ");
                        else
                                System.out.println(arr[x]+"]");
                }
       
        }
}



作者: KK要有光    时间: 2015-5-7 12:01
学习了。很有用。




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