將每個元素替換為右側最大元素

念舊不及愛自由發表於2020-11-26

給你一個陣列 arr ,請你將每個元素用它右邊最大的元素替換,如果是最後一個元素,用 -1 替換。

示例:

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

思路:從右向左取資料進行比較,大於賦值,預設max為-1用於替換最後一個元素

var replaceElements = function(arr) {
    var max = -1;
    for(var i = arr.length-1;i>=0;i--){
       var temp = arr[i];
       arr[i]=max;
       if(temp>max){
        max = temp
       }
    }
    return arr
};

 

相關文章