第六章 数组
一维数组
打印一维数组元素的值
1
2for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" ");
二维数组
- 打印二维数组元素的值
1
2
3for(int i=0;i<arr.length;i++)
for(int j=0;j<arr[i].length;j++)
System.out.print(arr[i][j]+" ");创建数组对象
创建对象:类名 引用变量 =new 类名("李华","男");
创建数组对象: 类名 引用变量[]=new 类名[length];
引用变量[0]=new 类名(“李华”,”男”);
引用变量[1]=new 类名(“张三”,”男”);
数组元素排序
一维冒泡法排序
class BubbleSort { void bubblesort(int arr[]) { for(int i=0;i<arr.length;i++) for(int j=0;j<arr.length-1;j++) if(arr[j]>arr[j+1]) {int t=arr[j];arr[j]=arr[j+1];arr[j+1]=t;} } }
一维查找最大数
class ArrMax { int max; int arrmax(int arr[]) { for(int i=0;i<arr.length;i++) if(max<arr[i]) max=arr[i]; return max; } }
二维查找最大数
class Arr2Max { int max; int arr2max(int arr[][]) { for(int i=0;i<arr.length;i++) for(int j=0;j<arr[i].length;j++) if(max<arr[i][j]) max=arr[i][j]; return max; } }
4.二分查找程序
class CommonBinarySearch {
int commonBinarySearch(int[] arr,int key){
int low = 0;
int high = arr.length - 1;
int middle = (low+high)/2; //定义middle
if(key < arr[low] || key > arr[high] || low > high){
return -1;
}
while(low <= high){
middle = (low + high) / 2;
if(arr[middle] > key){
//比关键字大则关键字在左区域
high = middle - 1;
}else if(arr[middle] < key){
//比关键字小则关键字在右区域
low = middle + 1;
}else{
return middle;
}
}
return -1; //最后仍然没有找到,则返回-1
}
}
评论区
欢迎你留下宝贵的意见,昵称输入QQ号会显示QQ头像哦~