阅读量:0
要去除数组中相邻重复项,可以使用两个指针来遍历数组并将不重复的元素复制到新的数组中。
以下是一个示例代码:
#include <iostream> #include <vector> std::vector<int> removeAdjacentDuplicates(std::vector<int>& nums) { std::vector<int> result; int n = nums.size(); if (n == 0) { return result; } result.push_back(nums[0]); for (int i = 1; i < n; i++) { if (nums[i] != nums[i - 1]) { result.push_back(nums[i]); } } return result; } int main() { std::vector<int> nums = {1, 2, 2, 3, 4, 4, 4, 5}; std::vector<int> result = removeAdjacentDuplicates(nums); for (int num : result) { std::cout << num << " "; } return 0; }
在上面的示例中,removeAdjacentDuplicates函数用来去除输入数组nums中的相邻重复项,并返回一个新的不含重复项的数组。主函数main中,首先定义了输入数组nums,并调用removeAdjacentDuplicates函数。最后输出不含重复项的数组。