0
我得扫描尺寸,和2个阵列,并将它们与递归回报1比较,如果它们是例如相同,否则返回0。比较2个阵列递归(C语言)
如果我” ve得到:size = 5,arr1 = 1 2 3 4 5,arr2 = 2 1 3 4 5所以它的好和1应该返回,当我运行程序的大小为2,并插入“1,2”为第一个数组和“3,4”第二个数组的程序返回0.这是好的,但如果输入“1,2”“1,2”我得到一个错误。
int RecSearch(int* arr1,int* arr2,int n)
{
int i=0,j=0;
for(i=j;j<n;j++)
if(arr1[i]==arr2[j])
{
swap(&arr2[i],&arr2[j]);
RecSearch(arr1-1,arr2-1,n);
}
if (arr1==arr2) return 1;
else return 0;
}
而你的问题是什么?此外,你应该明确定义什么意思是“相同的”,因为[1,2,3,4,5]和[2,1,3,4,5]绝对不是同一个数组。 –
'比较2个数组与递归'........为什么? – ThingyWotsit
我必须使用递归并且只有1 for循环。 –