La pila monotónica resuelve el siguiente elemento más grande de la matriz circular

Inserte la descripción de la imagen aquí

class Solution {
    
    
    public int[] nextGreaterElements(int[] nums) {
    
    
        Stack<Integer> stack=new Stack<>();
        int n=nums.length;
        int[] res=new int[n];
        for(int i=2*n-1;i>=0;i--){
    
    
            while(!stack.empty()&&nums[i%n]>=stack.peek()){
    
    
                stack.pop();
            }
           
            res[i%n]=stack.empty()? -1:stack.peek();
             stack.push(nums[i%n]);
        }
        return res;
    }
}

Supongo que te gusta

Origin blog.csdn.net/changbaishannefu/article/details/115267347
Recomendado
Clasificación