黑马程序员技术交流社区

标题: 冒泡排序 [打印本页]

作者: xiaozhou001    时间: 2015-10-2 13:36
标题: 冒泡排序
/*
需求对给定数组进行排序
{5,1,6,4,2,8,9}
冒泡排序
*/


class ArrayTest
{
        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 main(String[] args)
        {
                int[] arr={5,1,6,4,2,8,9};
                //排序前
                printArray(arr);
                bubbleSort(arr);
                //排序后
                printArray(arr);
               
        }
        public static void printArray(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]+"]");

                }
        }
}

作者: meijunwei6275    时间: 2015-10-2 13:42
不错,赞一个                                       
作者: 不爱念经的小僧    时间: 2015-10-2 14:17
课上不是都有吗?
作者: Rzzz    时间: 2015-10-2 15:19
冒泡排序和选择排序   这个要看你的理解..代码只是实现结果的一种工具,好好理解其中循环的比较.   二分查找好好理解mid与查询值的比较  然后改变   max  和   min 值的索引....二分查找还有最重要的就是针对的是有序的数列.
作者: 斯文阿昊    时间: 2015-10-2 21:45
不要纠结于代码,掌握算法思想才是最主要的




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