剑指offer(一)

面试的流程

面试的三种形式

  1. 电话面试
    能清楚表达自己的想法,特别是在解释复杂算法的时候。尽可能用形象化的语言把细节说清楚.当不确定面试官的问题的时候,应大胆地向面试官多提问,直到弄清楚面试官的意图为止.

  2. 共享桌面远程面试
    面试官能通过共享桌面观看应聘者编程和调试的过程。这一part主要是关心应聘者的编程习惯及调试能力.

  • 思考清楚再开始编程
  • 良好的代码命名和缩进对齐的习惯
  • 能够进行单元测试
  1. 现场面试
    准备一些问题,在每一轮面试的最后,面试官都会让应聘者问几个问题,应聘者可以提前准备好问题

面试的3个环节

  1. 行为面试
    一般是为了暖场用的,一般不会问技术难题.先是自我介绍,然后深入了解简历中列举的项目经历。
    应聘者的项目经验:
    一般采用STAR模型描述
    Situation:简短的项目背景
    Task:自己完成的任务
    Action:为完成任务自己做了哪些工作,是怎么做的
    Result:自己的贡献

应聘者掌握的技能应注意”了解”、”熟悉”和”精通”的区别
“了解”:只上过课或者看过书,但没有做过实际的项目,通常不建议在简历中只是肤浅地了解一点的技能
“熟悉”:在实际项目中使用某项技术已经较长的时间,通过查阅相关文档可以独立解决大部分问题,那么我们就熟悉它.
“精通”:一般对一项技术使用得心应手,在开发中,当别人来请教有信心也有能力解决则可说是精通.

  1. 技术面试环节
    总体会关注5个方面:
  • 扎实的基础知识:包括编程语言、数据结构和算法
  • 高质量的代码:考虑到问题的各种情况
  • 思路清晰:不要在形成清晰思路之前草草开始写代码
  • 优化效率的能力:对时间和内存效率要学会分析
  • 优秀的综合能力:沟通能力和学习能力等
  1. 应聘者提问环节
    推荐问的问题是与应聘的职位或者项目相关的问题
-------------本文结束感谢您的阅读-------------