为什么最难不过二叉树的算法出现在面试题中都会被应聘者抱怨?
应聘者角度
面试中, 面试者最引起共鸣抱怨的莫过于: "面试造火箭, 工作拧螺丝"了. 尤其是仅仅是应用程序的开发者, 这类开发者正常开发的思路是
使用现有的工具,架构,库实现迅速高校的开发, 底层实现自定义,能够扩展业务需求的功能也就OK了, 一般和算法基本上是拜拜的状态了!
如果是大数据工程师, 数据挖掘工程师, 数据分析工程师, 算法工程师, 人工智能AI工程师像这些工程师就会觉得算法题还是大有裨益的!
面试管角度
从公司角度, 从面试者考官的角度出发, 除了考察程序员基本的业务编程能力, 还要从其他方面考察应聘者的扩展能力,包括后期入职之后的学习成长能力, 像基础算法题
leetcode刷题, 二叉树, 红黑树算法题, 主要想考察的是应聘者思维能力, 工作态度,基础是否扎实! 但是这些和工作关系不大, 也就造就了
面试官爱出算法题, 应聘者觉得鸡肋的应聘局面!
那么针对面试者遇到这种算法题的正确态度应该是什么样的呢?
算法题绝大多数可以通过反复的学习来掌握解题的技巧, 需要应聘者消耗一定的时间和精力, 建议呢, 想拿高薪的程序员还是要花这个时间和精力的, 毕竟面试官才是决定是否offer的人选! 所以建议大家不要抱怨算法题, 多花时间研究它, 搞定它, leetcode刷起来, 刷的越多,大家
就业的机会也越多, offer越多, 走的路也广阔!
那么以下是 计算机中常见的 算法树:
二叉树 | ▪ 二叉树▪ 二叉查找树▪ 笛卡尔树▪ Top tree▪ T树 |
---|---|
自平衡二叉查找树 | ▪ AA树▪ AVL树▪ 红黑树▪ 伸展树▪ 树堆▪ 节点大小平衡树 |
B树 | ▪ B树▪ B+树▪ B*树▪ Bx树▪ UB树▪ 2-3树▪ 2-3-4树▪ (a,b)-树-树&pic=1&sug=1&enc=utf8)▪ Dancing tree▪ H树 |
非二叉树 | ▪ Exponential tree▪ Fusion tree▪ 区间树▪ PQ tree▪ Range tree▪ SPQR tree▪ Van Emde Boas tree |
空间划分树 | ▪ 四叉树▪ 八叉树▪ k-d树▪ vp-树▪ R树▪ R*树▪ R+树▪ X树▪ M树▪ 线段树▪ 希尔伯特R树▪ 优先R树 |
Trie | ▪ 前缀树▪ 后缀树▪ 基数树 |
其他类型 | ▪ 堆▪ 散列树▪ Finger tree▪ Metric tree▪ Cover tree▪ BK-tree▪ Doubly-chained tree▪ iDistance▪ Link-cut tree▪ 树状数组 |