항해99 12일차 개발일지

홍당무·2022년 11월 27일
0

알고리즘 제일 작은 수 제거하기

이번에 푼 문제는 정수형 배열의 값의 크기를 판단하는 문제이다. 자바 문법 중 배열의 개념이 부족한 탓에 이 문제에서 조금 오랜시간 허덕였다.

푸는 방식은 조건 중 배열의 길이가 1이면 [-1]을 리턴하는 함수를 하나 만들고 그 아래에 배열의 각 인덱스 값 마다 대소를 비교하여 가장 작은 값을 정수형 타입 변수 min에 저장한다.

그리고 마지막 조건인 가장 작은 수를 제거하기 위해 정수형 타입 변수 index를 선언한다. 그리고 찾은 min의 값이 arr[i] 와 같지 않다면 answer[]에 차례로 저장한다. 이 때 min의 값과 같은 값은 제외한다.

``
public class turtles26 {
public int[] solution(int[] arr) {
int[] answer = new int[arr.length-1];
int min = arr[0];

    if(arr.length <= 1){
        int[] answer2 = {-1};
        return answer2;
    }
    for (int i = 0; i < arr.length; i++) {
        if(min > arr[i]){
            min = arr[i];
        }
    }
    int index = 0;
    for (int i = 0; i <arr.length; i++) {
        if(min == arr[i]){
            continue;
        }else {
            answer[index++] = arr[i];
        }
    }
    return answer;
}
public static void main(String[] args) {
    turtles26 solution = new turtles26();
    String s = "TrY HeLlO WoRlD";
    int[] arr = {2,3,4,1};
    System.out.println(solution.solution(arr));
}

}
``

profile
공부하는 백엔드 개발자

0개의 댓글