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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiecong 中级黑马   /  2015-8-5 13:35  /  482 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class MaoPao
{
        public static void main(String[] args)
        {
                int [ ]  arr = {2,6,8,9,12,43,25,88,15};
                printArry(arr);
                maoPao(arr);
                printArry(arr);

        }
        public static int[] maoPao(int[ ] arr)
        {
                for(int x = 0 ;x<arr.length;x++)
                        for(int y = x+1;y<arr.length;y++)
                {
                        if(arr[x]>arr[y])
                        {
                                arr[x] = arr[x]^arr[y];
                                arr[y] = arr[x]^arr[y];
                                arr[x] = arr[y]^arr[x];
                        }
                }
                return arr;
        }
        public static void printArry(int[ ] arr)
        {
                for(int i = 0;i<arr.length;i++)
                        System.out.print(arr[i]+"\t");
                System.out.println();
        }
}


11 个回复

倒序浏览
这不是选择排序么   冒泡比较的是两个相邻的元素啊
回复 使用道具 举报
这是选择排序呀冒泡排序是要想一个泡泡那样升上去的。
回复 使用道具 举报
蛋糕的爱意 发表于 2015-8-5 13:59
这是选择排序呀冒泡排序是要想一个泡泡那样升上去的。

水里鱼儿吐的气泡越来越大 的意思  从第一个开始第一个与后边的每一个相比只能比后边的都小  。。。。。。这样从小到大排序就叫冒泡排序呀
回复 使用道具 举报
你贴错代码了吧?这是选择排序
回复 使用道具 举报
怎么可以不写注释!
回复 使用道具 举报
class  maoPao
{
        public static void maopao(int arr[])
        {
                for (int x=0;x<arr.length ;x++ )
                {
                        for (int y=x+1;y<arr.length-x-1 ;y++ )
                        {
                                if(arr[y]<arr[x])
                                {
                                        int temp=arr[x];
                                        arr[x]=arr[y];
                                        arr[y]=temp;
                                }
                        }
                }
        }
       
        public static void print(int arr[])
        {
                for (int x=0;x<arr.length ;x++ )
                {
                        System.out.print(arr[x]+",");
                }
        }


        public static void main(String[] args)
        {
                int arr[]={2,4,1,5,6,8,9};
                maopao(arr);
                print(arr);
        }
}
这才是
回复 使用道具 举报
汗,你们的貌似都是错的,冒泡的比较的
y和y+1比,不是和x比
回复 使用道具 举报
不是冒泡 鉴定完毕
回复 使用道具 举报
本帖最后由 xiecong 于 2015-8-8 16:00 编辑
叶顺达 发表于 2015-8-5 19:21
不是冒泡 鉴定完毕

class PM
{
        public static void main(String[] args)
        {
                int[ ]  a = {2,4,1,43,23,56,33,22};
                for (int i = 0;i<a.length ;i++ )
                {
                        for (int j = 0;j<a.length-i-1 ;j++ )
                        {
                                if(a[j+1]<a[j])
                                {
                                        a[j]=a[j]^a[j+1];
                                        a[j+1]=a[j]^a[j+1];
                                        a[j]=a[j+1]^a[j];

                                }
                        }
                }
                for (int x = 0;x<7 ;x++ )
                {
                        System.out.print(a[x]+",");
                }
        }
}

回复 使用道具 举报
确实 搞错了  不好意思 各位
回复 使用道具 举报
class PM
{
        public static void main(String[] args)
        {
                int[ ]  a = {2,4,1,43,23,56,33,22};
                for (int i = 0;i<a.length ;i++ )
                {
                        for (int j = 0;j<a.length-i-1 ;j++ )
                        {
                                if(a[j+1]<a[j])
                                {
                                        a[j]=a[j]^a[j+1];
                                        a[j+1]=a[j]^a[j+1];
                                        a[j]=a[j+1]^a[j];

                                }
                        }
                }
                for (int x = 0;x<7 ;x++ )
                {
                        System.out.print(a[x]+",");
                }
        }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马