面试经验-腾讯一面(挂)

原创 2018年04月16日 11:57:35

挺感谢面试官了,问了我将近50分钟,自己也更加了解自己欠缺什么了。

1 C++多态如何实现

    常规套路,这个很基础就不说了。

2 把析构函数声明为虚函数的作用,和实现的原理

    自己没懂实现原理应该怎么回答,回来后想了想,应该按照多态的思路去回答,子类重写了父类的析构函数,那么在调用到析构函数的时候就会发生多态,从而调用子类的析构函数,再调用父类的析构函数。先子类析构再父类析构是C++标准的规定,实现原理自己没有搜到,但这么做的原因很好找。

3 C++中static关键字总结

    类外:

        静态全局变量:文件之外不可见

        静态局部变量:

                1 存在全局区,程序运行期间始终存在。

                2 只初始化1次。

                3 作用域是局部的。

        修饰函数:文件之外不可见

    类中

        修饰成员变量:

                1 所有对象共享一个数据,没有创建对象已经存在。

                2 在类外初始化

                3 优势:有访问权限控制,不在全局变量的名字空间中

        修饰成员函数

                1 没有this指针,只能使用静态成员变量

    普通成员函数可以使用静态成员变量和静态成员函数。

一个很好的总结链接送给大家:

https://www.cnblogs.com/BeyondAnyTime/archive/2012/06/08/2542315.html

4 概率题,54张扑克牌,连摸三张,花色相同的概率

    考虑大小王,应该是52/54 * 12/53 * 11/52 

5 outptr了解过吗?

    下来之后百度都搜不到。

6 在数组n中找第k大的数,怎么找?

    最蠢的肯定是对所有数据快排或归并O(NlogN)。自己知道这个题最快肯定是O(N)但是当时紧张,没能仔细思考。

    再者就是冒泡k次,能把前k大的数全部找出来,O(kN)。

    下来之后又搜了一下,看了别人的思路:

    1 利用快排

        random()一个数做pv值,大于pv放右边(n个),小于pv放左边(m个)。

        比较m和k的大小

            m<k, 把右边的n个数再选pv值,做排序,比较new_m和(k-m)的关系,递归。

            m>k, 把左边的m个数再选pv值,做排序,比较new_m和k的关系,递归。

        据说时间复杂度是O(N*logk),怎么证明我就不知道了。

        自己后来想了想,貌似用这个方法复杂度应该是O(N):

            首先,如果使用快排找第k大的数,那么时间复杂度肯定和k无关的,再者有aT(n/b)+O(n^d)这个公式:子问题的重复次数是1,因为只选择一侧继续选pv值做划分,子问题的规模是一个概率值,应该是1/2,b为2,d应该是1,这就是每次划分需要遍历数组。那么logba = 0 < d -->O(logN)

https://blog.csdn.net/wangbaochu/article/details/52949443

7 问了哈希实现的方法有哪些,解决哈希冲突的方法有哪些。

    基础题。

后面就开始魔幻问题了,毕竟自己没有做过项目,答题基本全靠想象

8 qq用户ID是32位的整数,现在要你存储所有用户的状态,状态仅有在线和不在线两种,日均在线用户数量大约2亿。

    完全不知道怎么去思考,自己知道的所有和大数据相关的基本就只有堆排序和布隆过滤器了,一时脑抽就问是不是布隆过滤器,面试官微笑说那你就讲讲吧,可是自己对布隆过滤器也只是了解,从来没用过,面试官等我说完就问我,那你数据怎么删除。然后就投降了。

    自己下来之后看了看,应该是bitmap吧,因为只有两种状态,所以1bit就可以表示一个用户的状态,对于40亿的用户量,需要 5亿字节的内存,就是2^29,500MB吧。目前只能这样了。

9 领导让你给微信抢红包增加一个限制功能:每个用户每分钟最多抢5个,问每个用户的数据结构什么样,用什么结构存储,怎么避免内存的浪费。

    自己从来没遇到过,一开始连1分钟怎么确定都不知道,居然回答了timer()定时器和中断函数,面试官哈哈大笑...毕竟自己做硬件的,思维还是转变不过来,后面一想,额,sys_time可以查的,那果断加一个时间戳额。所以每个用户的数据就是

char num; 表示抢了多少次红包。

sys_time; 存放系统时间。

int User_ID;

后面自己慌慌张张,乱说一通,最后答道了用map存放数据,key是User_ID。

逻辑是第一次抢红包的时候(map中没有)就记录一个sys_time(),然后num++。

再抢红包的时候查找到用户ID对应的节点,然后比较sys_time()是否到了5分钟,如果到了,那么num=0,如果没到,num!=5,还可以抢,num++,如果num==5那么不能抢。

然后面试官问那么过期的数据如何删除呢,然后就懵逼了。

自己下来后想了想,或许可以用hash+map的方法。维护60个map,新增的参加抢红包的用户数据轮流存储在map中,根据sys_time()%60,决定存储在哪一个map,然后每隔一秒就clear()一个map。

举例:

在sys_time() == 7.00秒的时候(具体可能用定时器实现吧),清空7号map的所有数据。

在sys_time()==7.20秒的时候,有一个用户抢红包了,那么,就在0-59号map中找,如果找到了,就判断num。如果没找到,那么就插入7号map。

在sys_time()==1分钟+7.00秒的时候,删除7号map中的所有元素,表示1分钟已经到了,num限制解除。

这样的话精度是1s,也就是你在0.99秒第一次抢红包(存在0号map中),只需要等待59.01秒就可以再次抢红包了。

 每个节点存储
int User_ID; //做key值
char num; //表示剩余的抢红包次数
时间戳sys_time(); //第一次抢红包时候的时间

然后就结束了,最后面试官建议我继续回去做硬件。



腾讯一面(挂)

记2018届秋招——腾讯一面(已挂)腾讯这公司还是财力雄厚,应该是包下了整个酒店了。面试是一对一单独面试,地方也好找。我笔试投的岗位是web-开发,但是面试的是运营开发。因为选了服从调剂吧。正题:面试...
  • its_my_dream
  • its_my_dream
  • 2017-09-25 09:25:44
  • 429

腾讯2016校招面试经验分享(一面)

今天去参加腾讯公司的面试,我投的后台C++的岗位,今天就一面,总共80分钟。(面试官问了50分钟左右 + 30分钟做个一道编程题)。   面试如下: M (面试官) W(我自己) 。。。。。...
  • u010889616
  • u010889616
  • 2015-09-16 23:15:48
  • 5140

腾讯一面二面面经

腾讯一面二面结束了...之前没写一面过程,因为腾讯一面一直在问我前端知识,我就拖着没写。现在整理一下一面面试问题(可能记不太清了):1、介绍自己2、介绍项目3、HHTML和HTML的关系4、对XMLH...
  • qq_35580883
  • qq_35580883
  • 2018-03-20 18:53:26
  • 420

2017年腾讯暑期实习一面经验(测试开发)

前段时间和实验室小伙伴们一起投了腾讯的暑期实习,做完线上笔试差不多一周以后大家陆续收到了面试通知。面试通知是提前两天半收到了,来的很突然。因为腾讯线上测评题目还是挺难的,最后的编程题做的也不好,所以笔...
  • atnanyang
  • atnanyang
  • 2017-04-17 11:15:32
  • 3896

腾讯自然语言处理实习岗面经

人生第一次被BAT虐,所以记录一下,为明年找工作赞经验,毕竟网上都没有自然语言处理相关的面经。先来点干货! 面试流程 1. 自我介绍 2. 谈谈项目 3. 上黑板写代码按照上述流程分为三块,如...
  • qq_23142123
  • qq_23142123
  • 2017-12-22 19:22:08
  • 1239

腾讯后台开发一面二面纪实

今天面完腾讯后台开发的二面,本着攒点人品的态度来写这个帖子,顺便等一下面试官大哥更新我的状态,干等真的很焦急。 本人上海四大高校之一的一名软件专业的研究僧,校区坐落在寂寞荒凉的嘉大荒。本科非...
  • I_love_blog
  • I_love_blog
  • 2017-04-25 23:12:24
  • 2217

腾讯技术岗内推面经(二面)==挂

3月15号晚上十点HR打电话通知我第二天上午十点到十点半二面。。。本来就觉得一面那么简单肯定有有问题,果然二面挂了。。面试官知道我是学地信的,就问了我相关的知识,然后问做过什么项目;然后说我是跨专业,...
  • xiaoweiba_h
  • xiaoweiba_h
  • 2018-03-16 11:44:04
  • 187

腾讯实习生技术运营一面、二面经历

咳咳,先清清回忆, 让我从头开始吧,在2月的时候,就已经关注腾讯的实习生招聘了,奈何楼主的学校有点渣,就不敢投哪个啥啥啥计划了,自认为技术还没有到那个要求,额,好吧,接下来说说,我选择的是技术运营,...
  • lishangwen_alan
  • lishangwen_alan
  • 2016-04-15 18:35:08
  • 5794

腾讯二面之细节大曝光(一)

说明:我是那种比较偏于纪实类型的,所以可能写的有点细,有时候不知不觉就把那些细节写出来了,毕竟这是我第一次这样比较正式的经历。我后面还会附上心得体会版,专门写感受,而这篇主要描述吧。        ...
  • ljiabin
  • ljiabin
  • 2012-04-27 11:57:07
  • 9332

腾讯一面之全程回忆

4月20日20:20收到短信通知:                 腾讯邀请你于4月21号17点到珞珈山国际酒店7楼行政会议室参加软件开发类面试,请携带简历提前5分钟到达。【腾讯科技】      ...
  • ljiabin
  • ljiabin
  • 2012-04-27 00:01:44
  • 6850
收藏助手
不良信息举报
您举报文章:面试经验-腾讯一面(挂)
举报原因:
原因补充:

(最多只允许输入30个字)