嗨这是我的两个阵列。 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>
答案 0 :(得分:0)
如果使用std :: vector,那么可以使用std :: find在A中查找B的元素。
for(int i = 0; i<B.size(); i++)
std::find(A.begin() ,A.end(), B[i])