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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 爆炸头 中级黑马   /  2015-5-3 22:07  /  637 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文



import java.util.*;
class MaxArray
{
        public static void main(String[] args)
        {
                System.out.println("请输入5个整数,用空格隔开: ");
                int[] arr = new int[5];
                Scanner in = new Scanner(System.in);
                for(int i=0;i<5;i++)
                {
                        arr[i] = in.nextInt();
                }
                System.out.println("您输入的数组为:");
                printArr(arr);
                System.out.println("您输入的数组的最大值为:"+maxArr(arr));
                //selectArr(arr);
                bubbleArr(arr);
                System.out.println("bubble排序后的数组为:");
                printArr(arr);
               
        }
        //swapArr();方法   用于两个数据交换
        public static void swapArr(int[] arr,int x,int y)
        {
                int temp=0;
                temp=arr[x];
                arr[x]=arr[y];
                arr[y]=temp;

        }
        //maxArr方法 用于求数组的最大值
        public static int maxArr(int[] arr)
        {
                int max = arr[0];
                for(int i=1;i<arr.length;i++)
                {
                        if(arr[i]>max)
                        {
                                max=arr[i];
                                //swapArr(arr,);
                        }
                }
                return max;
        }
        //冒泡输入法
        public static void bubbleArr(int[] arr)
        {
                for(int i=0;i<arr.length-1;i++)
                {       
                        for(int j=0;j<arr.length-i-1;j++)
                        {
                                if(arr[j]>arr[j+1])
                                {
                                        swapArr(arr,j,j+1);
                                }
                       
                        }
               
                }
       
        }
        //选择排序
        public static void  selectArr(int[] arr)
        {
                for(int i=0;i<arr.length-1;i++)
                {
                        for(int j=i+1;j<arr.length;j++)
                        {
                                if(arr[j]<arr[i])
                                {
                                        swapArr(arr,j,i);
                                }
                        }
                }
        }
        //打印方法: 通过遍历逐个打印数组的数据
        public static void printArr(int[] arr)
                {
                        for(int j=0;j<arr.length;j++)
                        {
                                if(j!=arr.length-1)
                                {
                                        System.out.print(arr[j]+",");
                                }
                                else
                                {
                                        System.out.println(arr[j]);
                                }
                        }
                }

}

3 个回复

倒序浏览
不错 不错 加油
回复 使用道具 举报
我好久没有打冒泡了
回复 使用道具 举报
又是排序,我都差不多忘记了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马