공부블로그
1일 1코딩 본문
이진검색의 단점 보안
public static void main(String[] args) {
Scanner stdIn=new Scanner(System.in);
System.out.print("요솟수: "); int num=stdIn.nextInt();
int[] x= new int[num];
System.out.println("오름차순으로 입력하시오.");
System.out.print("x[0] :"); x[0]=stdIn.nextInt(); //배열의 첫 요소를 먼저 입력합니다.
for(int i=1;i<num; i++) {
do {
System.out.printf("x[%d]: ", i);
x[i]=stdIn.nextInt();
}while(x[i]<x[i-1]); //바로 앞 요소보다 작으면 다시 입력합니다.
}
System.out.print("검색할 값:"); //키 값을 입력 받음.
int ky=stdIn.nextInt();
int idx=Arrays.binarySearch(x,ky);
if(idx<0) System.out.println("그 값의 요소가 없습니다.");
else System.out.printf("%d은(는) x[%d]에 있습니다.",ky,idx);
}
결과
Comments