1. 배열 반전
다음과 같이 코드 코드를 복사합니다 .
import java.util.Arrays;
공개 클래스 ArrayReverse {
공개 정적 무효 메인(문자열[] 인수){
int[] arr ={1,2,3,4,5,6,7,8,9};
역방향(arr);
}
공개 정적 무효 역(int[] arr){
for(int i=0;i<arr.length/2;i++){
int 온도 = arr[i];
arr[i] =arr[arr.length-1-i];
arr[arr.length-1-i]=임시;
}
System.out.println(Arrays.toString(arr));
}
}
2. 최고의 가치를 찾아보세요
다음과 같이 코드 코드를 복사합니다 .
클래스 ZuiZhi
{
공개 정적 무효 메인(문자열[] 인수)
{
int[] a={2,92,34,54,28};
minMethod(a);
maxMethod(a);
}
공개 정적 무효 minMethod(int[] a)
{
int min=a[0];//0으로 초기화할 수 없습니다. 배열에 음수가 있을 수 있습니다.
for (int i=0;i<a.length;i++)
{
if(a[i]<분)
최소=a[i];
}
System.out.println("배열에서 가장 작은 요소는: "+min);
}
공개 정적 무효 maxMethod(int[] a)
{
int max=a[0];//0으로 초기화할 수 없습니다. 배열에 음수가 있을 수 있습니다.
for (int i=0;i<a.length;i++)
{
if(a[i]>최대)
최대=a[i];
}
System.out.println("배열에서 가장 큰 요소는: "+max);
}
}
3. 반으로 검색
다음과 같이 코드 코드를 복사합니다 .
/*
절반씩 검색:
3 5 7 9 10 14
최소=0 최대=길이-1 중간=(최대+최소)/2
*/
클래스바이너리검색
{
공개 정적 무효 메인(문자열[] 인수)
{
int[] a={3,5,7,9,10,14};
int index=binarySearch_1(a,7);
System.out.println(index);
index=binarySearch_2(a,14);
System.out.println(index);
}
공개 정적 int BinarySearch_1(int[] a,int 키)
{
int min=0,mid,max=a.length-1;
중간=(최소+최대)/2;
동안(키!=a[중간])
{
if(a[mid]>키)
{
최대=중간-1;
}
else if (a[mid]<키)
{
최소=중간+1;
}
만약 (최대<최소)
-1을 반환합니다.
중간=(최소+최대)/2;
}
중간으로 돌아가다;
}
공개 정적 int BinarySearch_2(int[] a,int 키)
{
int min=0,max=a.length-1,mid;
동안(최소<=최대)
{
중간 =(최대+최소)>>1;
if(a[mid]>키)
{
최대=중간-1;
}
else if (a[mid]<키)
{
최소=중간+1;
}
또 다른
중간으로 돌아가다;
}
-1을 반환합니다.
}
}