面试的基本素养

2019/01/01

面试的基本素养

该文档涵盖了面试的各种基本习惯,虽是小事,但是代表了一个编程人的基本素养,给人一良好的印象.

阅读完该文档后,您将会了解到:

  • 算法题目的求算步骤.
  • 回答问题时的基本态度
  • 面试准备的几个问题

这篇博客主要是只是自己按经验所写,错误之处还望指正。


算法题目的求算步骤

基本步骤

了解清楚题目再进行答题

对于一道题目,首先是准确理解题意。

  • 没有遇到过的名词
  • 条件约束模糊;(如树是否是二叉树,是否有反向指针)

对于自己疑惑的地方,要和面试官多交流,解答完自己的疑问才好着手解答题目。

思考清楚再开始编码

对于一道题目,最好是理清思路之后再开始编码。 而不是有个大致思路之后就开始动手编码了。

  • 分析关键问题,并确定关键问题的解决方案。

    解决方案的思考方向一般包括:

    1、采用哪种数据结构,如栈,队列等等; 数组、字符串、链表、树、栈、队列是面试中最经常考的数据结构;

    2、采用哪种算法思想,是哪种算法思想的变形实现,如动态规划、背包问题等;

  • 考虑清楚一些特殊输入和特殊情况;

    空,0等一些非法输入都是需要考虑的,在编码一开始就应该将非法数据和情况排除在外;

    数据结构,指针的最后一个元素或者头元素,可能会考虑这些特殊情况;

    事先考虑清楚,才会在后续改动代码是不是乱七八糟的。

  • 良好的命名和缩进等编码风格

    这个就不说了

健壮性之后再说最优解

  • 健壮性

    一个好的程序,首先要抗造,这是能不能用,最重要的一点;

    需要能通过所有的单元测试;

  • 最优解

    时间复杂度最低、空间复杂度最低、支持高并发调用….

回答问题时的基本态度

知之为知之,不知为不知

面试准备的几个问题

面试的最后面试官一般都会问自己有什么要问,在此最好做一下准备。

这样也能看出自己对这份工作的兴趣。


Show Disqus Comments

Post Directory