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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© crosam 中级黑马   /  2015-9-1 23:27  /  509 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


public class Choose {
        //交换位置
        public void ExchangValue(int[] value) {
                int tmpValue = value[0];
                value[0] = value[1];
                value[1] = tmpValue;
        }
        //求最值
        public int MaxValue(int[] value) {
                int result = value[0];
                for (int i = 1; i < value.length; i++) {
                        if (value[i] > result) {
                                result = value[i];
                        }
                }

                return result;
        }
        //选择排序
        public static void sortArray(int[] Array)
        {       
               
               
                for(int i=0;i<Array.length-1;i++)
                {
                        int min=i;
                        for(int j=i+1;j<Array.length;j++)
                        {
                                if(Array[min]>Array[j])
                                {
                                        min=j;
                                }
                                //if(min!=i)
                                {
                                       
                                int temp=Array[i];
                                Array[i]=Array[min];
                                Array[min]=temp;
                               
                                }
                               
                               
                        }
                        //每次选出的最值
                        //System.out.println(Array[min]);
                }
                for(int i=0;i<Array.length;i++)
                //for(int elements:Array)
                {
                        if(i<Array.length-1){
                        System.out.print(Array[i]+"\t");
                        //System.out.println(elements+"\t");
                        }else {
                                System.out.println(Array[i]);
                        }
                }
               
        }
        //冒泡排序
        public static void BubbleArray(int[] Array){
                for(int i=0;i<Array.length;i++)
                {
                        for(int j=0;j<Array.length-1;j++)
                        {
                                if(Array[j]>Array[j+1])
                                {
                                        int t=Array[j];
                                        Array[j]=Array[j+1];
                                        Array[j+1]=t;
                                }
                        }
                        //System.out.println(Array[i]);
                        if(i<Array.length-1){
                                System.out.print(Array[i]+"\t");
                                //System.out.println(elements+"\t");
                                }else {
                                        System.out.println(Array[i]);
                                }
                }
        }
//        //插入排序
        public static void lnsertion(int[] Array)
        {
                //第一重循环代表排序的元素
                //在待排序元素前的内容为已经排序
                for(int i=1;i<Array.length;i++)
                {
                        int element=Array[i];//为待插入元素
                        int j=i;//元素应该插入的位置
                        while(j>0)
                        {        //寻找位置排放
                                if(Array[j-1]<=element)
                                {
                                        break;
                                }else {
                                        Array[j]=Array[j-1];
                                        j--;
                                }
                               
                        }
                        if(j!=1)  //如果j==i代表元素本来就在正确的位置
                                Array[j]=element;
                }
        }
        //递归求n!
        public static int recursive(int i)
        {
                int sum = 0;
                if (0 == i)
                        return (1);
                else
                        sum = i * recursive(i-1);
                return sum;
        }
       
       
        public static void testMaxvalue()
        {
                int [] testData=new int[]{1,50,200000,2,4,60,7,8,9,-2,};
                Choose tools=new Choose();
                int result=tools.MaxValue(testData);
               
                System.out.println("test"+result);//, args)
        }
       
       
        //
        public static void main(String[] arge) {
                testMaxvalue();
                System.out.println("<---------------------------------------->");
                int [] Array=new int[]{1,50,20,2,4,60,7,8,9,-2,};
                sortArray(Array);
                System.out.println("<---------------------------------------->");
                System.out.println(recursive(4));
                System.out.println("<---------------------------------------->");
                BubbleArray(Array);
                System.out.println("<---------------------------------------->");
               
                lnsertion(Array);
                System.out.println("<---------------------------------------->");
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马