1299. 将每个元素替换为右侧最大元素

2020-06-26  本文已影响0人  编程小王子AAA

给你一个数组 arr ,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用 -1 替换。

完成所有替换操作后,请你返回这个数组。

示例:

输入:arr = [17,18,5,4,6,1]
输出:[18,6,6,6,1,-1]


class Solution {
    public int[] replaceElements(int[] arr) {
        if(arr==null || arr.length==0) return new int[0];
        int max=arr[arr.length-1];
        arr[arr.length-1]=-1;
        for(int i=arr.length-2;i>=0;i--){
            int t=arr[i];
            arr[i]=max;
            if(t>max){
                max=t;
            }
        }
        return arr;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读