알고리즘 part-1 : Next Greater Element 알고리즘

오늘 저는 알고리즘과 문제 해결에 관한 새로운 시리즈를 시작할 것입니다. 나는 그들의 솔루션에 대한 다양한 문제에 대해 게시 할 것입니다. 나는 자바를 프로그래밍 언어로 사용할 것이다.

오늘은 Java에서 다음으로 큰 요소 문제를 해결하는 방법을 보여 드리겠습니다.

이 문제에 대해 논의해 봅시다. 이 문제에서는 정수 배열이 주어집니다. 각 배열 요소의 정확히 다음 큰 요소를 찾아야 합니다. 더 큰 요소가 없으면 해당 위치에 -1을 배치합니다.

예시

We are given : [4,5,1,7,3,6,9]
Answer       : [5,7,7,9,6,9,-1]


해결책을 보자...

public int[] nextGreater(int[] arr){
        int[] result=new int[arr.length];

        for(int i=0;i<arr.length;i++){
            int j=i+1;
            int value=arr[i];
            boolean got=false;
            while(j<=arr.length-1){
                if(arr[j] > value){
                    got=true;
                    result[i]=arr[j];
                    break;
                }                
                j++;

            }
            if(!got){
                result[i]=-1;
            }
        }


        return result;
    }


이 알고리즘이 작동하기를 바랍니다. 감사합니다 ❤.

좋은 웹페이지 즐겨찾기