컴퓨터공학 💻 도서관📚

Part2. 8-1 ~ 8-2 알고리즘 문제 본문

✅🌲강의 복습 노트/패캠 JavaSpring 강의,코드 복습

Part2. 8-1 ~ 8-2 알고리즘 문제

들판속초록풀 2025. 12. 31. 21:32

[ 8-1 ] 문제는 너무 쉬워서 생략

 

 

[ 8-2 ] 문제

 

 

import java.util.Iterator;
import java.util.Scanner;
import java.io.*;
import OOP.Order;

public class Main {
    public static void main(String[] args) {
        int [] arr = {12, 25, 31, 48, 54, 66, 70, 83, 95, 108};

        boolean check =false;
        int left =0, right = arr.length, middle = (left + right) /2 ;
        int value = 83;

        while(left <= right) {          // 1. 이 조건이 킥(포인트)이다.

            if (arr[middle] == value){
                check = true;
                break;
            }
            else if (arr[middle] > value)
                right = middle -1 ;     // 2. 빼기 1 해주기
            else
                left = middle + 1;
                
            middle = (left+right)/2;
        }
        if (check == true){
            middle++;                   // 3. 몇번 째라고 출력하고 싶으니까 더하기 1
            System.out.println("찾는 수는 " + middle + "번째 있습니다.");
        }
    }
}
Comments