C++面试准备

Huan Lee Lv5

参考github

面试准备

计算机基础知识复习

  • 将上面你学习过的内容,包含下面关键词的,都重新复习、做笔记一下
  • C、C++、数据库原理与设计、操作系统、计算机网络、Linux程序设计、Shell、MySQL、Redis

面试常考内容复习(所谓的八股文,我不是很喜欢这个称呼)

  • 注:一定要在学习了上面的第一步之后,再来做这里的计算机基础知识复习,这里的复习主要是针对面试会考的内容,高频内容,针对面试去复习,并不适合作为学习内容!

  • 《CS-Notes》

刷“面试算法”题

数据结构与SQL题

场景题以及智力题(可以通过google去搜索解决问题,锻炼搜索能力~)

简历编写

简历投递与内推

  • 对于投递方式的说明

    • 直接投递

      • 即到各个公司的校招官网,上传简历,等待公司的面试官筛选你的简历并发起面试
    • 内推

      • 内推对于面试者来说,唯一的作用是能够将我们的简历定向到具体的小组里。首先一个公司不同部门、不同小组之间是千差万别的,所以这种方式能让我们去到比较好评的部门;其次不要认为内推就能减少面试轮次,是不行的,所有的面试基本都是3轮技术面(1面同事或mentor,2面leader,3面leader的leader或者交叉面,即其他组的同级别leader)+1轮轻松的HR面。
  • 牛客网找内推

    • 使用方式:翻到下面的帖子,选择感兴趣的方向,留言、发送邮件给发帖人,或按照发帖人提供的方式进行联系。这样内推需要海投,发帖人不一定会处理,可能是简历不过,可能是忘记处理
    • https://www.nowcoder.com/discuss/referral/index
  • 官网投递(一样很高效)

  • 实习僧海投

面试套路

  • 关于面经

    • 我建议你不要看别人的面经,除了徒增焦虑,感觉自己菜以外,没有任何有效信息摄入,别人考的内容,你不一定考;别人的知识储备,你不一定有,简单的面经没人看,难的面经一堆人卷,复习接雨水,面试二叉树反转。只关注好自己有没有复习好,不要过分关注别人怎么样。
  • 关于面试常见QA

    • 实习和校招面试流程是怎样的?

      • 一般是面试官直接和你联系,然后约定一个面试时间,发给你一个在线会议的链接。到了约定时间后,双方一起进入面试的在线会议链接,然后打开摄像头,面试官提问,你回答问题。而做算法题的时候,一般会给你一个在线编辑器,里面你输入的内容,面试官也能够看到,许多面试官会直接采用牛客网的面试链接,因此你要熟悉没有IDE的情况下,刷算法题,比较推荐的就是leetcode刷题,acm模式,不要有什么联想功能

      • 当问题问完,以及算法题做完后,面试官会让你反问,这个时候

        • 如果你感觉面试情况不错

          • 可以和面试官积极交流一下,展现出你比较积极的一面,比如询问具体需要做什么,面试中还需要补充哪些知识,是否有特别不足的地方,需要提升的地方。建议这时候不要询问上班时间、加班情况、卷不卷这种问题。除非你个人技术实力确实比较强,那么其实可以对这些你的底线问题进行询问,避免之后在后续面试浪费时间,当然最好的建议还是,在面试之前就大概了解,你的底线是否会触及,这样可以节约你的面试官的时间。
        • 如果感觉面试情况一般

          • 建议就少说话了,好好准备下一次面试,不要陷入面试失利的情绪中,好好准备下一次面试,复盘一下问题,哪些是没有复习到的知识要点?哪些是面试流程上,你可以更主动地避免?哪些是面试官的原因。不需要太过自责,有时候面试官的友好引导,也会影响我们的面试发挥。
        • 可以问过没过吗?

          • 一般来说,面试官都是不会回答这个问题的,事实上,过没过最清楚的应该是你自己,大概80%的问题答出来了,而且你的竞争者不卷、这个岗位的hc不卷的话,过面试没什么问题。
    • 面试一般要多久?

      • 不管是实习生面试还是应届生面试,每一轮技术面试的时长都是固定的,一般来说就是40-80分钟,包括做算法题的时间。由于面试一开始是由你自己做自我介绍,因此事实上一开始面试的主动权是掌握在你手上的,如果你自我介绍几十秒钟就结束了,而你的简历又写得非常简单,那么面试官大概率会让你先做几道算法题,再通过做题的第一印象来对你进行面试,判断你是否通过。
    • 一开始就做算法题?

      • 然而事实上,很多人面试,算法题是最后一个步骤,甚至对于面试表现比较好的同学来说,最后做算法题的数量也许就一道两道的样子,然后提供一个思路,代码实现就好了,甚至都不要求你运行,面试官也许会一眼就能看出你的思路大概是不是正确的。因此,最好保证你的算法题是最后来做,而不是在一开始的时候就做算法题,如果遇到了面试官在开始的时候直接打断你,要求你先做算法题,只能说你运气不是很好。
    • 实习生面试会比应届生的面试要简单吗?

      • 一般来说,从面试的实际体验上,面试官明面上会告诉你,实习生和应届生的要求是一模一样的,不会有任何的包容。但实际执行的过程中,有可能会感受到,对实习生回答不上来问题是更包容的,尽管对于应届生来说,回答不上来问题,也是比较包容的,毕竟每个人的精力是有限的,大部分的同学都不是对于每一个问题都能够回答得非常好,总有纰漏的地方,或者并不了解的地方。
    • 遇到不会的技术怎么办?

      • 和面试官,不卑不亢地说清楚:“不好意思,这个技术我不是很清楚。”当然如果你只是了解,并不知道其源码实现,也是很正常的,也要和面试官说清楚,不要强答,也不要害怕。
    • 答不上来问题就会挂吗?

      • 不会。面试是人和人的交流,绝对是会有运气的存在的,因此答不上来,最后却过了,是很正常的情况,把每一次面试都当作
    • 全部答上来就会拿到offer吗?

      • 不一定。过的概率比较大,但是每一次面试,一般都是有另外几个同学在同时和你们竞争,如果人家一样答得很好,但是在简历上、其他地方上有比你突出的地方,比如实习公司和学校在同一所位置,实习时间比你更长,他和hr面试时的稳定性更好,很有可能最后offer就发给他(如果hc只有一个,不能发给多个人)。
    • 和HR面试有什么注意的?

      • HR面试的问题都比较开放性,一般问的问题是看你是否适合过来,看看你的稳定性,你要站在hr的角度去考虑hr的问题。比如问你有没有对象?你的对象在什么城市?你以后打算在哪里发展?可能就是看你的稳定性,那么对你来说最有利,但不一定是事实的回答就是,你没有女朋友,你对象就在公司所在城市,你打算在公司所在城市发展,未来想要在公司越干越好,绝对没想过跳槽。。。这样那样的回答,是比较符合hr的期望的,所以在回答每一个问题的时候,好好思考一下对方主要是想问什么,根据你自身的情况,去回答对应的问题。规则是死的,人是活的,不要有做题家思想,考虑太多真实与虚假,正确与错误,正义与不正义的问题
    • 为什么官网简历一直在筛选?

      • 可能是因为你的简历不够突出,一直没有面试官捞起来,并向你发起面试,可以考虑重新改一下简历,再重新上传,一般一周内都会有面试发起的,好的简历一般两三天就会发起新的面试(即便是被挂掉之后的情况)
      • 这时候也可以考虑询问内推人、或者相关联系人(你投递简历的时候联系的那个人,前提是你不是使用的校招官网直接投递),你的简历情况
    • 为什么面试结束后,一直没有通知下一步进展(没有挂,也没有说发起下一次面试)?

      • 1、可能只是面试官还要面试其他人,当你们所有人面试通过后,就会进行排序,最后选出hc个数量的面试者通过,然后参加下一次面试;2、这种情况,也可以直接询问你的内推人,到底是什么情况,如果面试官认为是挂掉了,那就催促一下对方,尽快结束流程,然后等待下一次面试官的捞起简历、发起面试
    • 面试挂掉还会有人捞吗?

      • 即使是面试挂掉,并不代表是你能力不行,也许只是简单的因为hc数量不够,根据排序你被筛掉而已,这很正常,所以很运气。因此即使是挂掉,只要之前有人向你发起面试(显然的,毕竟你是面试挂了),正常情况下都会有新的面试官向你发起面试的。
    • 面评是什么?很重要吗?

      • 面评,就是当你结束面试之后,面试官会将本次面试的评价、对面试者的评价写入系统。只要没有出现很糟糕的情况:1、和面试官吵架、双方态度很差,以及各种奇怪的状况;2、你的面试完全没有认真准备,90%的问题都没有回答上来,显然是假的;3、各种方面的不认可面试官等等。。。
      • 不能说很重要,也不能说不重要。只要是正常情况下,面评不会影响任何事情,就算是面试挂了,也没有什么问题。
  • 最好的面试实践

    • 0、好好丰富你的简历,让你的简历有话可说,你的实习经历、你的项目经历都有话可说。在刚进入面试会议间的时候,面试官让你先做自我介绍。

    • 1、做完自我介绍,不要简单的就是介绍你是谁,你哪里来的,想去哪。而是自我介绍结束,立刻开始聊你自己的简历,你会的技术栈是什么,你的项目经历是什么,你主要做了什么东西,用到了什么技术,为什么要用这个技术?你负责的是哪块,难点是什么?你的实习是在哪里,实习主要工作是什么?

      • 你要知道的是,你的简历里的内容,一定是你比面试官掌握得更清楚的,这时候主动权在你的手上,好好把握这部分的节奏,既要有深度又要有广度,不要被面试官带了太多节奏。
    • 2、当你经过第1点之后,你会发现,时间已经过了差不多20分钟了,这时候你的简历已经聊完了,你和面试官已经亲切交流过了。这时候,一般面试官会直接问你“八股文”,也就是问你很多,我告诉你复习过的知识,一般都是一问一答的形式,或者是对一个问题,一起深入探究。

      • 你要记得,这部分,并不是绝对的一问一答的方式,也不是做题,当遇到困难需要你思考的问题的时候,适当请求面试官的点拨,达到一个在面试的时候,就有的一个共同合作的关系(就像在工作一样),当然你绝对不能直接问面试官怎么做,而是带有思考地给出方案,然后询问面试官的看法。
    • 3、当你完成第2点的时候,你会发现又20分钟过去了,差不多就已经快结束了。这时候,双方都比较累了,大概率面试官会让你做算法题,这样他会轻松一点,当然如果你俩现在就已经60多分钟了,可能就不做算法题了,也不是不可能的事情。这时候剩20分钟,做算法题,给一道做一道即可

      • 先记住,你做完了一道题,如果做得很好,那就会给你一道新的题,更难的题,题是做不完的,除非你把面试官的题库做完了,一般在一次面试中都有四五道。
      • 既然如此,那到底怎么办呢:)巧妙的方法是,刷太快的话,不要急着提交,大概差不多的时候你再提交,比如面试官询问你是否已经完成的时候,你再提交,这时候你可以解释你在思考是否有遗漏的情况、以及有没有更好的解决方式,如果你有时间,顺便分析一下时间空间复杂度,在解释给面试官的时候,这样会更科班、更专业。
    • 4、等算法题做完之后,面试基本上就算是完成了,这时候面试官也许会让你反问他一些问题,不过如果面试情况不是很好的话,可以选择不问,当然也可以直接比较礼貌地告诉面试官:“感觉今天面试的发挥不是很好,如果没有通过的话,希望他能够帮忙快一些释放简历,然后自己方便好好复盘,准备被其他面试官捞起来重新面试,好好准备下一次的面试。”

  • Title: C++面试准备
  • Author: Huan Lee
  • Created at : 2023-08-22 11:35:00
  • Updated at : 2024-02-26 04:53:15
  • Link: https://www.mirthfullee.com/2023/08/22/C++面试准备/
  • License: This work is licensed under CC BY-NC-SA 4.0.