09年腾讯实习招聘面试题//纯C

题目很简单,有两个有序数组A、B,各包含m、n个数据,给你一张纸一支笔,请写出一个函数,将A、B合并成一个新的有序数组。注意,由于数组的元素类型不确定(全是int,或者全是float,也可能是某个struct),所以你写的代码应当能处理不同类型的数据(类似C++的template技术)。注意,答案应当在不编译的情况下尽可能保证正确。你可以试着离开IDE/vim,直接在回答框里写代码。
月关宝盒
浏览 309回答 2
2回答

慕田峪4524236

随手写了一个typedefint(*__CMP__)(constvoid*c1,constvoid*c2);/*voidqsort(void*base,size_tnum,size_tsize,int(*comparator)(constvoid*,constvoid*));dlen=DataLength*/void*combineArray(void*a1,size_ta1Len,void*a2,size_ta2Len,size_tdlen,__CMP__cmpFunc){if(a1==(void*)NULL||a2==(void*)NULL||a1Len&a2Len==0){return(void*)NULL;}unsignedchar*retArray=(unsignedchar*)malloc(a1Len+a2Len);unsignedchar*p1=(unsignedchar*)a1;unsignedchar*p2=(unsignedchar*)a2;for(inti=0;i
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript