比较两个数组并删除重复

时间:2017-07-15 10:14:46

标签: c++ arrays

嗨这是我的两个阵列。 A [] = {1,2,3,4,5} B [] = {3,4,5}

预期产出:

C [] = {1,2}

有人可以尝试用c ++解释解决方案

请找到我试过的代码。我们在上传代码时遇到了一些问题。请找到我们尝试的算法

1)采用两个阵列A和B. 2)包含m个元素的数组A和包含n个元素的数组.m> n 3)从标准输入接收阵列A和阵列B的输入 4)使用两个for循环比较两个Arrays元素中的元素    其中数组A的每个元素与数组B的每个元素进行比较    不等于将元素推入新数组。

但是我们在这里遇到两个问题,如果数组A的第一个元素不等于B的第一个元素,它将被视为不重复。但是在那种情况下该元素将等于数组B的最后一个元素我的代码失败了。

接下来,我们能够将不是从数组A重复的元素转换为C,但是如果想要将未从数组B复制的元素转换为C.我们需要再次实现for循环。?< / p>

1 个答案:

答案 0 :(得分:0)

如果使用std :: vector,那么可以使用std :: find在A中查找B的元素。

for(int i = 0; i<B.size(); i++) std::find(A.begin() ,A.end(), B[i])