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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 途中ms前进 中级黑马   /  2015-5-23 14:06  /  266 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class ArrayTool
{/**
空参数构造函数。
*/
        private ArrayTool(){}
/**
获取一个整形数组中的最大值。
@param arr 接受一个int类型的数组。
@return 会返回一个数组中的最大值。
*/
        public static int getmax(int[] arr)
        {int max=0;
        for(int x=0;x<arr.length;x++)
                {if(arr[x]>arr[max])
                max=x;}
        return arr[max];
        }

/**
获取一个整形数组中的最小值。
@param arr 接受一个int类型的数组。
@return 会返回一个数组中的最小值。
*/

        public static int getmin(int[] arr)
        {int min=0;
        for(int x=0;x<arr.length;x++)
                if(arr[x]<arr[min])
                {min=x;}
        return arr[min];
        }
/**
给int数组进行选择排序。
@param arr 接受一个int类型的数组。
*/
        public static void selectsort(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])
                        {swap(arr,x,y);
                                }
                        }
                }
        }
/**
给int数组进行冒泡排序。
@param arr 接受一个int类型的数组。
*/
        public static void bubblesort(int[] arr)
        {for(int x=0;x<arr.length;x++)
                {for(int y=0;y<arr.length-x-1;y++)
                        {if(arr[y]>arr[y+1])
                                {swap(arr,y,y+1);
                                }
                        }
                }
        }
        /**
        给数组中的元素进行位置的置换。
        @param arr 接受一个int类型的数组。
        @param a 要置换的位置。
        @param a 要置换的位置。
        */
        private static void swap(int[] arr,int a,int b)
        {int temp=arr[a];
        arr[a]=arr[b];
        arr[b]=temp;}
        /**
        给数组中的元素打印,打印形式[elemet1,elemet2,·····]
        */
        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]+"]");
                        }
               
                }
                /**
                查找元素在数组中的位置。
                @param arr 接受一个int类型的数组。
                @param a 接受一个未知数。
               
                */
        public static int getIdex(int[] arr,int a)
        {for(int x=0;x<arr.length;x++)
                {if(arr[x]==a)
                return x;}
        return -1;}
        /**
        折半查找。
        @param arr 接受一个int类型的数组。
        @param key 未知数。
        @return 会返回未知数的角标及不存在数组中的值。
        */
        public static int halfserch(int[] arr,int key)
        {int min=0,max=arr.length-1,mid;
        while(min<=max)
                {mid=(min+max)>>>1;
                if(key>arr[mid])
                min=mid+1;
        else if(key<arr[mid])
                max=mid-1;
        else
                return mid;}
        return -1;}
}

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

1 个回复

正序浏览
这个对于复习真心不错!收藏了,不过只到折半查找, 后面的呢?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马