最近一段时间, 在北京参加30多家大中小互联网公司面试, 其中有百度, 腾讯, 蘑菇街, 滴滴, 美丽说, 互联网金融等公司, 面试过程也是学习过程, 从中发现这些知识点范围是固定的, 或者说如果你细心准备, 大概考点都差不多吧, 下面我会把这些知识点范围总结下, 仅仅是问题,没有答案. 同时也欢迎你在下面评论中进行补充.  如果列出问题,你能会80%以上, 我想你能够拿到每月20k以上的薪水.

一 算法

  基本排序算法要会写,时间复杂度要会推算, 主要是冒泡排序, 快速排序, 选择排序.
  查找算法,要会写二分查找法, 实际场景要会应用.
  实例算法思路要明白,基本算法看多了, 我觉得是几种思路的变换, 需要自己领悟. 
  面试中考过: 
  1 猴子选大王
  2 斗地主项目设计
  3 实现随机函数
  4 字符串中元素各种变形查找
  5 123456 六个数放到三角形三个顶点及中点上,使每条边上的数字和相等
  6 一个超大文件里面存放关键,统计每个关键的个数, 问如何实现
  7 一个10G的文件,里面存放关键字, 但内存只有10M, 问如何实现统计, 出现关键字次数最高的前100个
  8 实现单链表与双链表
  9 实现有权重的随机算法
  应该就这么多,其他想不起来, 做这些算法需要冷静分析下, 不要轻易说no

二  php 知识
  1 说说php的魔术变量, 要能全部说出来.
  2 php的设计模式, 要能清晰说出单例, 工厂, 注册模式的实际应用. 
  3 session与cookie的区别及如何解决session的跨域共享.
  4 如何防止sql注入及数据安全问题. 
  5 php的生命周期, 启动流程, 多看TIPI.
  6 php的垃圾回收机制, php变量,数组 c源代码如何实现.
  7 fastcgi 比 php-cgi 的优势在哪里.
  8 你用过那些框架, 各自有什么优缺点.
  9 你是怎么理解php的.
  10 php运行模式有几种,分别是什么.

三 网络
  1 http code 码含义 比如204, 304, 404
  2 apache与nginx对比,你觉得他们各自的优缺点.  
  3 nginx与php数据通信原理是什么.
  4 http1.0与http1.1的区别, http与https的区别.
  5 描述http请求的三次握手.
  6 如何实现跨域请求.
  7 关于header的各种参数的作用.
  8 长连接的优势在哪里.
  
四 数据库
  1 你采用mysql的引擎是什么. mysql innodb与myisam 这两种引擎本质区别是什么, 要能够从底层数据实现来说.
  2 mysql 字段类型有那些, 它们在内存能够存储多少字节数据, 比如 datetime timestamp date.
  3 在正式服务器上, 如何操作一个存储大数据表上增加一个字段或添加索引或改变数据字段类型. 
  4 索引最左原则的意思是什么.
  5 mysql分库分表策略, 如何解决增表,减表问题.
  6 redis与memcached对比,各自优缺点.
  7 redis与memcached如何实现分布式搭建.
  8 一致性hash原理是什么.
  9 mongodb与mysql对比,优势在什么地方.

五 LINUX
  1 如何查看服务器负载
  2 说说你常用的命令
  3 如何统计日志文件中访问次数最多的十个ip地址.
  4 源码编译过lamp 或 lnmp 软件吗
  5 在当前目录下,如何查找包含keyword文件.
  6 如何重启php 或 nginx.
  7 进程与线程的区别
  8 什么情况下会出现死锁, 如何解决死锁.
  
六 综合
  1 说说你在工作中碰到的难题及如何解决的, 或讲讲你做过的项目中有难度的项目.
  2 你能说一下微博的架构流程是什么样的吗? (这个问题我也是醉了)
  3 说说你们现在服务器的架构是什么样子.
  4 高并发,高流量情况下,如何设计秒杀或抢红包架构.
  5 除了php,你还会那种语言

转载:http://www.iamphper.com/?post=44