LeetCode 1299. Reemplace cada elemento con el elemento más grande a la derecha

Darle un arreglo de matriz, reemplace cada elemento con el elemento más grande a la derecha, si es el último elemento, reemplácelo con -1.

Después de completar todas las operaciones de reemplazo, regrese a esta matriz.

1 <= longitud arr. <= 104
1 <= arr [i] <= 105

Recorra de atrás hacia adelante y tome el valor máximo después de cada valor:

class Solution {
    
    
public:
    vector<int> replaceElements(vector<int>& arr) {
    
    
        vector<int> behindMax(arr.size());

        behindMax[arr.size() - 1] = -1;
        for (int i = arr.size() - 2; i >= 0; --i) {
    
    
            behindMax[i] = max(arr[i + 1], behindMax[i + 1]);
        }

        return behindMax;
    }
};

Supongo que te gusta

Origin blog.csdn.net/tus00000/article/details/112644962
Recomendado
Clasificación