上星期参加了恒生电子的笔试,来记录保存一下笔试编程题,以填充我枯竭的编程基础QAQ
题目大致意思:有两有序的数组aArray[] ,bArray[],已知他们的长度分别为aLength,bLength,求两数组的交集和交集个数
然后可以用C或者Java语言编程。
我选的C语言:int Intersection(int aArray[], int bArray[], int aLength, int bLength, int result[])
【函数功能是题目给好的,不记得具体参数如何,大致是这样】
result[]存放交集数组。函数返回值为交集个数。
这是我童鞋思路:先将a数组与b数组逐个比较,如果a[i]大于等于b[j],若相等则存入result中,并a[i]与b[j+1]比较,若大于则直接a[i]与b[j+1]比较;如果a[i]小于b[j],则a[i+1]与b[j]比较;
**复杂度为(aLength*bLength)**。
int Intersection(int aArray[], int bArray[], int aLength,