Linux 拨号vps windows公众号手机端

c++怎么去除数组中相邻重复项

lewis 9年前 (2017-02-08) 阅读数 11 #程序编程
文章标签 c++

要去除数组中相邻重复项,可以使用两个指针来遍历数组并将不重复的元素复制到新的数组中。

以下是一个示例代码:

#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函数。最后输出不含重复项的数组。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门