sort된 배열 에서 특정 값(target)을 찾기 위해 주여진 숫자 중 가운데 수 기준으로
target이 작을경우 좌측으로 , 클경우 우측으로 한개씩 targer을 찾을 때 까지 검색한다!
sort사용법!
int[] arry = {45,12,3,94};
Arrays.sort(arry); 후에 for문으로 뽑아주면
3,12,45,94 이렇게 순서대로 나온다, 한글이나, 알파벳도 마찬가지!
이진탐색 사용법 예제
int[] arry={28,15,4,30,1};
Arry.sort(arry); // -> {1,4,15,28,30}
int low=0;
int mid;
int higth=arry.length-1;
while(low<=higth){
mid=(low+higth)/2; //->0+4/2
if(arry[mid]==tartget){
return arry[mid];
}else if(arry[mid]>targrt){
higth=mid-1;
}else{
higth=mid+1;
}
return -1;
}
'알고리즘' 카테고리의 다른 글
10월 11일 2문제 - Java (0) | 2021.10.12 |
---|---|
[프로그래머스] 하샤드 수 (0) | 2021.05.11 |
[프로그래머스] 핸드폰 번호 가리기 (0) | 2021.05.10 |
[Java] 백준 5585 : 거스름돈 (1) | 2020.05.20 |
[Java] 백준 1931 : 회의실배정 (0) | 2020.05.15 |