百度作业帮面试总结

2017年9月11日 14:00开始面试

总体来说,面试的难度偏难,先梳理一下面试的知识点(可能不够全面,想到哪写到哪)

一面:

1、简述MVC。(把MVC的流程要说清楚)

2、ThinkPHP缓存原理(我当时把ThinkPHP缓存原理源码的实现逻辑说了一遍)

3、面向对象的三大特性:封装、继承、多态。(分别举例解释)

4、给你一个文件data,将data内的内容全部放在名称为error的文件里面。写出具体的实现思路?

我当时给出了两种方案(1、2):

1、利用fopen()系列函数;

2、利用file_get_contents()、file_put_contents();

3(面试官给出的)、file()

5、简述堆排序的过程。

6、冒泡排序算法的优化。

7、单例设计模式(考虑禁用new)。

8、const、static、final的区别。

9、数据库SQL的优化技巧。

二面:一看就是技术leader。
1、简述在学校做了什么?

2、聊项目(这个差点扛不住,面试官人比较好,比较善于引导)

简历上写的项目,对项目的核心逻辑进行描述。然后面试官会由浅入深的来问。具体问的哪些东西我记不太清了,问的点大致相同,都是针对项目的业务场景进行深层剖析,找出问题所在,让你给出解决方案。很爽。

3、聊架构。

数据库的读写分离的应用场景。

数据的一致性解决方案。

4、聊算法。

给你一个数组,前面是从下到大的排序,后面也是从小到大的排序,中间出现断点。

5   6   7  1  2   3  4  5  

尽可能高效的查找其中一个元素。(这个可以做到 logn 级别的)

整个面试过程大约持续了3个小时,学到的东西很多。

过了大约4天,被通知通过了面试。

9月20日入职。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,473评论 25 709
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,525评论 18 399
  • 刚刚看完《奇葩说》,辩题是“该不该当面分手”。跟很多人一样,整一集看下来一直都挺触动的,非常喜欢这样撼动人心的节目...
    saiyonana阅读 3,355评论 2 3
  • 爱因斯坦用智慧把你预言 广义相对论的最后板块 多少科学家要把你寻找 你是从什么时候启航的 你孤独地流浪了多少岁月 ...
    言壳阅读 1,346评论 4 1
  • 【写在前面】 假期中,很多家长不让孩子玩手机或平板,或者说,不知道怎么玩。不让玩,原因显而易见;但是,各位家长,有...
    杨心武阅读 3,443评论 0 0

友情链接更多精彩内容