用c语言完成函数 size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)其中a1 和a2 都为无符号数组,al1 和al2 为数组的长度,数组的长度为偶数.无符号数组由一对数字区间组成.如下例:a1 为 0,1,3,
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 11:35:22
![用c语言完成函数 size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)其中a1 和a2 都为无符号数组,al1 和al2 为数组的长度,数组的长度为偶数.无符号数组由一对数字区间组成.如下例:a1 为 0,1,3,](/uploads/image/z/14928646-22-6.jpg?t=%E7%94%A8c%E8%AF%AD%E8%A8%80%E5%AE%8C%E6%88%90%E5%87%BD%E6%95%B0+size_t+foo%28unsigned+int+%2Aa1%2Csize_t+al1%2Cunsigned+int%2A+a2%2Csize_t+al2%29%E5%85%B6%E4%B8%ADa1+%E5%92%8Ca2+%E9%83%BD%E4%B8%BA%E6%97%A0%E7%AC%A6%E5%8F%B7%E6%95%B0%E7%BB%84%2Cal1+%E5%92%8Cal2+%E4%B8%BA%E6%95%B0%E7%BB%84%E7%9A%84%E9%95%BF%E5%BA%A6%2C%E6%95%B0%E7%BB%84%E7%9A%84%E9%95%BF%E5%BA%A6%E4%B8%BA%E5%81%B6%E6%95%B0.%E6%97%A0%E7%AC%A6%E5%8F%B7%E6%95%B0%E7%BB%84%E7%94%B1%E4%B8%80%E5%AF%B9%E6%95%B0%E5%AD%97%E5%8C%BA%E9%97%B4%E7%BB%84%E6%88%90.%E5%A6%82%E4%B8%8B%E4%BE%8B%EF%BC%9Aa1+%E4%B8%BA+0%2C1%2C3%2C)
用c语言完成函数 size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)其中a1 和a2 都为无符号数组,al1 和al2 为数组的长度,数组的长度为偶数.无符号数组由一对数字区间组成.如下例:a1 为 0,1,3,
用c语言完成函数 size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)
其中a1 和a2 都为无符号数组,al1 和al2 为数组的长度,数组的长度为偶数.
无符号数组由一对数字区间组成.如下例:
a1 为 0,1,3,6,10,20
a2 为 0,1,20,50,4,5
则 a1 表示以下区间[0,1] [3,6] [10,20]
a2 表示以下区间[0,1] [20,50] [4,5]
则a1,a2 的重叠部分为[0,1] [4,5],其长度为2
函数foo 要求返回重叠区间的长度.上例中为2.
用c语言完成函数 size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)其中a1 和a2 都为无符号数组,al1 和al2 为数组的长度,数组的长度为偶数.无符号数组由一对数字区间组成.如下例:a1 为 0,1,3,
#include
#include
int Cmp(const void * v1,const void *v2)
{
\x05return *(unsigned int *)v1 > *(unsigned int *)v2;
}
size_t foo(unsigned int *a1,size_t al1,unsigned int* a2,size_t al2)
{
\x05qsort(a1,al1,sizeof(unsigned int),Cmp);
\x05qsort(a2,al2,sizeof(unsigned int),Cmp);
\x05size_t counter1 = 0,counter2 = 0;
\x05size_t length = 0;
\x05while (2 * counter1