【发布时间】:2013-12-27 05:35:21
【问题描述】:
我正在尝试将两个数组合并为一个而不重复,但我的代码无法正常工作。谁能建议如何解决这个问题?
void unify(int set_A[], int size_A, int set_B[], int size_B, int set_C[], int size_C)
{
int i,j,count=0,indx=size_A;
for(i=0;i<size_A;i++)
{
set_C[i]=set_A[i];
}
for(i=0;i<size_B;i++)
{
for(j=0;j<size_A;j++)
{
if (set_B[i]!=set_C[j])
count++;
}
if (count==size_A){
set_C[indx]=set_B[i];
indx++;
}
}
}
例子:
a{3 7 13 8 11 1 4}
b{5 7 1 2 3}
a_b{3 7 13 8 11 1 4 5 0 0 0 0 0..}
【问题讨论】:
-
合并后的数组是set_C吗?
-
是的,数组 a , b 是给定的,array_c 的大小是 a, b 之和
-
for循环中的M和N是什么? -
数组 c 中的“o”是垃圾值,但我不在乎是否有垃圾值
-
在哪里声明 M 或 N?