-2
我的任务是:子集验证使用递归C++
使用
is_element_of
功能,实现其确定一个阵列是另一种“子集”(即,在阵列中的每一个元素是否也是一个功能阵列b的元素)
bool is_subset(int* a, int length_a, int* b, int length_b)
bool is_element_of(int i, int* array, int length)
代码is_element_of
bool is_element_of(int i, int* array, int length) {
if (length == 0)
return false;
else {
if (i == array[length - 1] || is_element_of(i, array, length - 1))
return true;
else
return false;
}
}
代码is_subset
bool is_subset(int* a, int length_a, int* b, int length_b) {
if (length_a == 0 && length_b == 0)
return true;
else if (length_a != 0 && length_b == 0)
return false;
else {
if (
is_element_of(a[length_a], b, length_b) &&
is_subset(a, length_a - 1, b, length_b)
)
return true;
else
return false;
}
}
可有人请指出问题所在?
btw,我强烈建议不要将支撑控制语句与内联语句混合 - 这就是Heartbleed发生的情况。 – Dai
那么问题是什么?你没有说过。 – Dai
is_subset函数不起作用,我不知道从哪里开始。 – user3908838