题目来源:https://leetcode.cn/problems/apply-operations-to-an-array/description/
C++题解:
class Solution {
public:
vector<int> applyOperations(vector<int>& nums) {
int len = nums.size();
int tem;
int mm=0;
// 按要求执行两倍和置零操作
for (int ii = 0; ii < len-1; ii++){
if(nums[ii]==nums[ii+1]){
nums[ii] = 2*nums[ii];
nums[ii+1] = 0;
}
}
// 用循环将0移到数组末尾
for (int kk = 0; kk < len; kk++){
if(nums[kk]!=0){
tem = nums[kk];
nums[kk] = 0;
nums[mm] = tem;
mm++;
}
}
return nums;
}
};