前几天中午刚回到宿舍,啪的一下一个电话面试就打过来了,很快啊
我大意了没有闪 ,,
以下是题目以及过后整理的答案思路。
第一题
说一下指针和引用的区别?
- 本质区别:引用是别名,指针是地址
- 引用不能为空值,引用一旦与某个对象绑定后就不再改变
- 程序为指针变量分配空间,而不为引用分配内存空间
- 引用可以被认为是不能改变的指针
第二题
有50个学生,按顺序排成一列,编号1,2,3…50,让奇数的人出列,剩下的人再次从1开始编号,依照这样的规则不断出列,问:最后剩下的那名学生,最开始的编号是多少?
① 1,2,3,4,5,…,49,50
② 2,4,6,8,10,…,46,48,50
③ 4,8,12,16,20,…,44,48
④ 8,16,24,32,40
⑤ 16,32
⑥ 32
第三题
有两个房间,一个房间有三个开关,分别控制另外一个房间的三盏灯,现在需要确定三个开关别对应哪一盏灯,并且要求每个房间只能进一次,请给出方案。
答:①进入有开关的房间,打开一个开关,等待一段时间后,关闭开关,再打开另外一个开关
②进入有灯的房间,可以看到一盏亮灯,同时第一个开关对应的灯还有残留的温度,即可确认
思考:每个房间只能进一次,可以联想为程序执行的空间有限,那么我们的问题的重点应该转化为用时间来弥补空间的不足,即”等待一段时间后“相当与”增加了时间复杂度“。
总之本次面试未能成功,下次有电话面试,一定要先做好准备,找好环境,备好纸笔,如果是对方突然打过来,最好向对方说明10分钟后再开始,给自己有充分的心理准备。