腾讯面试题求解

首先简单说明一下情况:
我是自动化专业的,学的跟cs关系不大,但是自己一直在学编程。

投简历,腾讯线上笔试,然后昨天(4.14)去一面。

在酒店里面,面试官很年轻,态度也很好,整个过程没什么压力。

我简单说明了自己的情况,就是除了c/c++基础的编程以及嵌入式编程啥都不会,什么网络啊,数据库啊,都不会。
然后面试官楞了,估计是没遇到我这样啥都不会的,然后想了一下出了一个题:

有一个结构体order,包含orderId和userId,还有一个user结构体,包含uer的age,id等信息;
然后有一个函数,参数是一个order和user的数组;
求oder数组里面所有user的age小于20的user,用另一个结构体数组把满足条件的order打印出来。

struct order
{
T orderId;
T userId;
}
struct user
{
T userId;
T age;
...
}
//伪代码
 fun(order[],user[])
{...}
然后我说我只会遍历,面试官提示说,加入两个数组都很大,50000,怎么做。

我说那从第二个数组里面去遍历然后找出20岁以下的再去第一个数组里面查找。

面试官问那如果20岁以下的有很多呢?

我想了一分钟,说不会。

面试官问我学过hash没,我说学过,面试官问我能不能用hash表,我想了一下说不会。。我真的不知道咋用hash去简化啊

所以在这里问一下大家到底是怎么样一个思路
#腾讯##C++工程师#
全部评论
先遍历user,用hashtable记录符合要求的userID,然后遍历order,查找是否有在hashtable的userID,如果有就打印出来
点赞 回复 分享
发布于 2016-04-15 10:58
。。。。。。。。。。。
点赞 回复 分享
发布于 2016-04-15 14:06
感觉17号时我会和楼主很像,本人机械
点赞 回复 分享
发布于 2016-04-15 23:51

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务