总结复习一下java se的一些知识点(三)
一、定义数组
//定义一位数组
int [] arr1 = new int[4];
int arr2[] = new int[2];
int [] arr3 = new int[]{1,2,3};
int [] arr4 = {22,6,7,3,7,6,9,3,353,77};//数据明确的时候
//定义二维数组
int [][] arr5 = new int[2][3];
int [][] arr6 = new int[2][];
arr6[0] = new int[3];
arr6[1] = new int[5];
二、查找方法(折半查找)
//折半查找的数组必须是有序的
//方法一
public int halfSearch(int[] arr,int key)
{
int min,max,mid;
min = 0;
max = arr.length-1;
mid = (min+max)/2;
while(key!=arr[mid]){
if(key>arr[mid])
min = mid+1;
else if(key < arr[mid])
max = mid-1;
mid = (max+min)/2;
}
return mid;
}
//方法二
//折半查找2
public static int halfSearch_2(int[] arr,int key){
int min,max,mid;
min = 0;
max = arr.length-1;
while (min <= max){
mid = (max+min)/2;
if(key>arr[mid])
min = mid+1;
else if(key < arr[mid])
max = mid-1;
else
return mid;
}
return -1;//表示不存在该数
/*
函数最后一句改为:return min;可以用来求出插入一个数,该数的下标,使排序不乱
*
* */
三、排序方法
//选择排序
public static void selectSort(int[] arr){
for(int i = 0;i < arr.length-1;i++){
for(int j = i +1 ;j < arr.length;j++){
if(arr[i]>arr[j]){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
//冒泡排序:相邻的两个元素进行比较,如果符合条件,交换位置
public static void bubbleSort(int[] arr){
for(int i = 0;i < arr.length-1;i++){
for(int j = 0; j < arr.length-i-1;j++){//-i:每比较一次就会出现一个最大值,在末尾
if(arr[j]>arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
//不管什么排序,都要对满足条件的元素进行位置置换
public static void swap(int[] arr,int a,int b){
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
在Java中有提供的类Arrays里面的方法可以进行排序,可以在实际开发中使用
Arrays.sort(arr);
854

被折叠的 条评论
为什么被折叠?



