- 直接从后往前更新最大值存入数组中,然后逆置数组,删去最前的,在随扈补一个-1即可。
class Solution {
public:
vector<int> replaceElements(vector<int>& arr) {
vector<int>v;
int ans=0;
for(int i=arr.size()-1;i>=0;i--)
{
ans=max(ans,arr[i]);
v.push_back(ans);
}
reverse(v.begin(),v.end());
v.erase(v.begin(),v.begin()+1);
v.push_back(-1);
return v;
}
};