黑马程序员技术交流社区
标题:
自己制的小工具表
[打印本页]
作者:
途中ms前进
时间:
2015-5-23 14:06
标题:
自己制的小工具表
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;}
}
作者:
冷雨敲窗被未温
时间:
2015-5-23 14:30
这个对于复习真心不错!收藏了,不过只到折半查找, 后面的呢?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2