[JAVA] 프로그래머스 : 가까운 1 찾기

조예빈·2024년 8월 24일
0

Coding Test

목록 보기
118/138

https://school.programmers.co.kr/learn/courses/30/lessons/181898

처음 코드(정답)

class Solution {
    public int solution(int[] arr, int idx) {
        //arr의 원소는 1 또는 0
        //idx보다 크면서 배열의 값이 1인 가장 작은 idx
        int answer = -1;
        int len = arr.length;

        for(int i=0; i<len; i++){ //arr의 index값
            if(i >= idx && arr[i] == 1){ //index보다 크면서 배열의 값이 1
                answer = i; //index를 return
                break;
            }
        }
        
        return answer;
    }
}

최적화 코드(정답)

처음 코드는 for문을 0부터 검사하기 때문에 조금 더 오래 걸린다. for문의 시작을 조건에 맞는 index 이후부터 검사해주면 검사 범위가 더 짧아져서 시간이 더 빠르다.

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러

0개의 댓글