4-Arrays and Array Algorithms

一、重点 1,linear search

public int search(int[]arr, int key) {

for(int i=0;i<arr.length;i++) {

if(key==arr[i]) {

return i;

}

}

return -1;

}

![image1](../../assets/49373d5a50544fa29efcbe593444d389.png)

2,binary search 针对有序数组

private static int binarySearch(int[] arr, int target) {

int left=0;

int right=arr.length-1;

while(left<=right) {

int mid=(left+right)/2;

if(target==arr[mid]) {

return mid;

}else if(target<arr[mid]) {

right=mid-1;

}else {

left=mid+1;

}

}

return -1;

}

![image2](../../assets/76c18edeb5314745991213b0a0d8db5a.png)

image3

分析二分法 image4

image5

image6

image7

image8 二、复习 1, Arrays

2, Random Numbers image9

image10 3,Inserting an element image11

Removing an Element image12