如何实现C++数组间的合并,存在重复项
描述如下:
比如 a[4] = {2, 3, 454, 67}; b[4] = {223, 23, 45, 454}; c[4] = {23, 87, 223, 452};
合并成merge[num] = {2, 3, 23, 45, 67, 87, 223, 452, 454}; num为9; num的值在合并过程中自动累加统计实现!
怎么把数组合并,各数组复的元素重仅仅保留一个!
如何实现C++数组间的合并,存在重复项
描述如下:
比如 a[4] = {2, 3, 454, 67}; b[4] = {223, 23, 45, 454}; c[4] = {23, 87, 223, 452};
合并成merge[num] = {2, 3, 23, 45, 67, 87, 223, 452, 454}; num为9; num的值在合并过程中自动累加统计实现!
怎么把数组合并,各数组复的元素重仅仅保留一个!
3 回答2.1k 阅读✓ 已解决
2 回答4k 阅读✓ 已解决
3 回答3.5k 阅读
3 回答542 阅读✓ 已解决
1 回答3.3k 阅读
1 回答1.1k 阅读✓ 已解决
1 回答2.2k 阅读
需要C++11 支持。
如果不想用c++11,只需要改一下输出:
鉴于题主想用比较底层的方法,类似纯C的方式,即不用STL的函数。那样思路就要分几个步骤了:
我用C语言简单实现了上述步骤,没有考虑算法效率,仅供参考:
其中排序,我直接用了快排,题主也可以自行实现排序。