gpt4 book ai didi

c++ - 查找两个数组的交集

转载 作者:行者123 更新时间:2023-11-28 05:30:35 25 4
gpt4 key购买 nike

我很难找到我的代码有什么问题 - 起初我以为我已经完成了,但后来我发现了一些问题。我正在创建一个名为 bagIntersection 的函数,它接受两个包对象并在两者中找到共同的项目,然后将它们放入一个新包中:

例如,如果 bag 有项目 {"b", "b", "c"} 并且 bag2 有项目 {"b", b", "d", "e"},函数调用:

ArrayBag<std::string> resultBag = bag.bagIntersection(bag2);

应该只在 resultBag 中返回字符串“b”。我的函数 bagIntersection 将 {"b","b"} 返回到 resultBag 中。所以不知何故我得到了“b”的倍数。

(代码已删除)代码是正确的。

最佳答案

如果你想删除重复项,你可以像这样使用 vector 容器:

std::sort(v.begin(), v.end());
v.erase(std::unique(v.begin(), v.end()), v.end());

你将只有一个“b”。

关于c++ - 查找两个数组的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39648253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com