面试经历

面试开始
2020年3月19日20.02

首先,介绍一下自己的专业,和自己擅长的领域。

问题1:问我的项目,把项目的流程,实现说了一下,以及这个mybash和bash有什么不一样的点。

问题2:两个主机在局域网里面,不知道IP,怎样传送数据(懵逼),他提醒了一下,使用特殊标记,我把具体实现大概说了一下。

(因为第一个问题,没回答好,我说你要不问点C基础,他说,不好问。)

问题3:结构体的硬拷贝(我没理解他的意思,他最后说,是他的描述有问题,然后跳过了)

问题4:TCP和UDP的区别

问题5:进程和线程概念,我说了句多线程程序在多处理器下才用,他反问,单处理器不能用多线程吗?(懵逼),然后回答:多线程在单处理器下,毫无用处,因为没办法同时刻执行多条路径,还会导致CPU资源浪费。又问了多线程的实现方式,说了说调用线程库,他问有别的办法吗?我说没有接触到,并且说了自己看了一点linux的书,说了一下linux的多线程是内核级线程,但是自己不懂。他表示理解。

问题5:口述一下堆排序,快排的实现,还有时间复杂度,啥的。在快排讲解之中加入自己的理解为什么快排与堆排都是NLogN,为什么快排叫做快排,从多线程角度讲了一下,他轻蔑的笑了一下,我???不理解,这个问题就算过了。

这个空档吐槽了一下腾讯课堂,说了一下我对腾讯课堂使用UDP的看法,他问我为啥不能是TCP(就等着他问这一句),讲了一下,udp做实时视屏的好处,我说:我的老师告诉我每一种方法都有它的特点,我们不能说好或者坏,在不同的环境下去考虑合适的方法,巴拉巴拉,他表示赞同。

问题6:假如5 1 2 3 4中的逆序数我们看做4个,5 2 1 3 ,我们看做有3个逆序数,给你个数组让你去找其中的逆序数,你怎样设计,我想了想,说用选择排序,他说时间复杂度太高了,有没有NLogN的,我想了一会说,堆排(明知道是错的还挣扎),他说堆排找出来的不全,给我讲了,为啥不全。让我继续想,最后:我说我这一时半会也想不出来,(有点灰心丧气),他告诉我用二路归并,我…….,然后我把怎样实现去说个一下,他让我别灰心,不怪我,能想到选择排序就很好了。我给他讲了讲我对二路归并与快排之间存在的联系(想着扳回一局),他问我,怎样去实现二路归并排序,说用四个指针,他反问两,三个可以吗?我说可以,但是不好,讲了讲如何用四个指针去做优化。他问了点细节,我就见招拆招答了。
他跟我讲,其实找逆序那个,大数据用的场景也挺多,举个一个网易云的例子,怎样去给两个歌单相近的人推荐歌曲,我表示是自己才疏学浅。他说没事。他表示对苏老师的看法的赞同:每一种方法都有它的特点,我们不能说好或者坏,在不同的环境下去考虑合适的方法(算法没有绝对的好与坏,看环境)。

再次和他说了一下几个排序的特点,简单说了一下冒泡和选择,从稳定性出发。希尔排序学习的时候的看法。

排序算是过了。

问题7:问了一下BST树,我擅作主张给他讲了讲BST的特点,应用和创建,以及怎样去创建一个最合理的BST树,讲了讲AVL,RB树,与BST树,一步一步的发展。他觉得我这块没啥大问题就不再其他的了,跳过了。

聊了会天,瞎扯,问他在那个部门,主要是干啥,和他讲了讲他的产品给大家带来了多少便利,夸他一波。

问题8:一个箱子N个球,一次只能取1或者2个,然后有多少种取法。

和他讲了讲我的想法,他说你说得对,但是你把问题想的太复杂了,问我有没有更好的办法(从程序人员角度),疯狂提醒我,我说:这个我现在想比较紧张想不出来,说明自己理解它是一个动态规划问题,讲了一下自己写过一篇01背包的博客,以及对动态规划问题的理解。他给我最后给我讲了这个题。(尴尬)

他说他没什么问题了,后面会有其他人联系我,我和他讲了讲自己曾经去广州打过暑假工,可以接受那边的气候,说了我对腾讯的认识,然后他表示程序员很累,说了一下,为什么选择了这个行业。又谈了谈疫情,就说再见了。

结束2020年3月19日21.19

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值