阿里菜鸟 app后端开发 简历面 3月1日 32分钟html
1,hashset的特色 底层数据结构 用的hashmapjava
2,hashmap底层数据结构 是否线程安全 如何避免hash冲突 用什么能够保证线程安全 concurrentHashmap的底层数据结构mysql
3,秒杀系统的核心数据结构 优先队列 用堆实现的优先队列有什么好处 能够减小流量linux
4,i++如何实现原子操做? jdk中concurrent.atomic包中的相关类如 AtomicIntegergit
5,类加载机制 双亲委派的好处 能够保证一个类只被一个类加载器加载 和JDK自带类同名的自建类不会被加载 http://www.cnblogs.com/lanxuezaipiao/p/4138511.html程序员
6,java有几种类加载器 Bootstrap Extension Application github
7,mysql的binlog 面试
8,spring的ioc原理算法
9,arraylist和linkedlist的区别spring
10,servlet是否线程安全
11,like %xx l和like xx%是否有效率差别 前者会使索引失效
12,mysql索引的种类有哪些
总结:阿里是第一个面试个人公司,晚上8点多忽然打电话来,那时我刚和同窗出去吃饭回来,猝不及防搞个人很紧张,另外因为我的缘由有3个月左右没怎么学习过,因此不少东西都忘了,表现的很差.如问个人第一个问题servlet是否线程安全都没答上来,给面试官的印象很很差,因此简历面就跪了..
美团点评 出行事业部 大数据分析岗 一面 二面 3月2日 共2小时
1,nio aio讲一下
2,hashmap的底层数据结构 如何防止hash冲突 为何hashmap是线程不安全的 为何会循环引用
3,spring 的ioc和aop原理
4,跳跃表讲一下
5,垃圾回收有哪些算法
6,类加载器有哪些 双亲委派原则是怎么样的
7,java内存的5个区域
8,判断对象是否能够回收的算法
9,threadlocal的做用,底层数据结构
10,线程池中的参数介绍
11,volitile关键字的做用 可见性 防止jvm指令重排
12,观察者模式讲一下
13,linux的命令 如何查询一个目录下大于500m的文件
如何查出一个目录下的全部日志文件
如何查询一个日志文件的最后10行
如何统计一个日志文件的字节数 wc -c xx.log
14,tcp协议的3次握手 4次挥手
15,快速排序的原理 手写快速排序
16,手写反转链表
17,一个有序数组 给定一个数target 写一个函数判断这个数组中是否有两个数加起来等于给定的数 如 2 3 7 8 9 给定15 数组中有7+8等于15
https://blog.csdn.net/woliuyunyicai/article/details/44222949
18,讲一下一个完整的http请求过程
19,动态规划时间复杂度
20,http中常见的响应头 请求头有哪些
21,concurrent包下知道哪些类 ArrayBlockQueue LinkedBlockQueue ConcurrentLinkedQueue CopyOnWriteArrayList CopyOnWriteArraySet ConcurrentSkipListMap ConcurrentSkipListSet SynchronousQueue PriorityBlockQueue DelayQueue CountDownLatch CyclicBarrier Semaphore Exchanger Executors Callable Future FutureTask ConcurrentHashMap ...
总结: 因为前一天晚上阿里面试表现很差,后来在去美团的路上看了看虚拟机的东西,因为以前系统看过一遍,因此看一下很快就记回来了,后面就是由于一面的时候虚拟机部分答的好过了一面,可是二面的时候写剑指offer的原题 真的过久没写代码降低不少,是在面试官的提示下勉强答出思路, 一面的时候手写快速排序也是写的很尴尬.. 虽然最后二面面试官(应该是一个leader)说以后会有hr联系我,当时真的觉得过了,可是如今想一想这个面试表现真的基本不可能会过的,如今想一想若是真要找实习不要这么着急的,应该先恢复一下实力再投的.
小米 云平台基础部门 分布式框架改进 一面 二面 3月5日 共2小时
1,说一下nio和io的区别 nio的原理
2,简单介绍下hadoop、storm
3,linux中 如何查看一个进程的cpu占用率 内存占用率 ps aux 或top(动态查看) 或先用top找出要查看进程的pid,而后进入proc文件系统查看 如 cd 1 less status
如何查看服务器内存使用状况 cpu使用率 vmstat 2 (每隔2秒刷新一次)
如何查看服务器内存使用状况 free -m
如何查看服务器磁盘空间使用状况 df
如何查看主机的ip地址 ip addr show 或 ifconfig
查看磁盘空间使用率的命令:df
查看系统进程命令:top
检测Linux性能的命令:ps,free,vmstat,netstat
4,手写代码 将一个单向链表每m个数反转一次,最后不足m的不反转
5,一个二叉树,节点中的元素的值为正数负数或0,求最大子树和, https://blog.csdn.net/andahuzhuang/article/details/52037394
6,手写合并2个有序链表,使得新链表仍然有序
7,详细讲一下多线程生产者消费者例子
8,讲一下并查集 其应用场景在哪里 https://www.cnblogs.com/xudong-bupt/p/8097475.html
9,讲一下java虚拟机的内存结构 5个区域
10,线程池介绍一下
11,手写一个死锁例子
12,讲一下tcp协议的3次握手
总结: 一面的时候写的代码勉强写出来因此过了一面,二面面试官就是打电话叫我来面试的男人,我以前觉得他是hr,他过来的时候我还觉得小米只有一面,而后就直接hr面了,而后当他坐下来开始问我多线程问题的时候我才知道我真的是too young too simple,接着就是考个人2道算法题一道没想出来,一道没写对,哎,太尴尬了,我当时还说我由于一些缘由好久没写代码了,他说这不是理由,这只能说明你没有彻底掌握或者说不够熟练,彻底掌握的东西是不会忘的,就像1+1你永远也忘不了,我只能说是是是,确实也是... 接着就是说今天你的表现我是不满意的,可是他说很喜欢个人积极性,本身会去看这么多东西,叫我再回去练练,甚至说只练算法就行,准备好了能够再去找他,他说但愿6月份能收到个人消息.走的时候我问他对于应届生,他们最看重的是算法吗?他说是,他们要的是基础好的人,学习速度快的人,不要求一来就能上手作项目,
后来我从去哪儿的面试官那才知道他就是小米云计算平台的老大,真的是大佬,难怪这么有气场,
这个部门是改进大数据框架的部门,也就是作中间件的部门,对技术的要求仍是比较高的,我真的挺想去的,个人程序员梦想就是未来去作写框架的工做,
2面面试官说的那些话是我后面决定转大数据方向的很重要缘由之一.
网易有道词典 后端开发 一面 3月6日 1小时10分钟
1,一个二叉树 其中节点知足 左节点值<父节点值<右节点值 将二叉树中的元素值按从大到小的顺序存入数组中 手写代码
能够用栈或递归(其实都同样),还能够用Comporator接口,
2,spirng都用到了哪些设计模式 ioc用到了工厂模式 aop用到了代理模式 ... 共9种设计模式
3,io中 buffer 和reader writer 用到了什么设计模式 装饰器
4,struts中用户登陆用到了什么组件 拦截器
5,如何写一个完整的登陆代码 cookie session 数据库
6,linux中查看各端口的状况 netstat
linux中如何更改环境变量 且不影响其余用户 在home目录下修改.bashrc文件 如export classpath = ..
7,如何防止sql注入 预编译
8,线程池有哪些 ?线程池达到最大线程数且任务队列满后,有哪些应对方案? http://blog.csdn.net/u011479540/article/details/51867886
9,如何保证数据库数据被窃取后 黑客最多看到用户名而看不到密码 用md5算法加密密码 数据库中存md5字符串 用户登陆时在本地将密码转成md5字符串 再与数据库数据对比
10, String a = "abc" String b = new String("abc"); String c = "abc" String d = new String("abc") 四个引用间的关系 http://blog.csdn.net/qq_35448976/article/details/76229408
11,有道有时候要调用第三方翻译接口,可是要先获取到第三方的密钥,没有密钥没法调用翻译接口,密钥每10分钟更新一次,问如何设计程序?
volitile String authKey; 一个线程执行定时器获取密钥代码,一个线程调用翻译接口,volitile保证可见性,
总结: 这个面试官人很是好,没答出来的问题当场教你,因此网易的面试体验给我感受很好.走的时候面试官问我学java多久了,我说是研究生开始学的,我说我本科没有好好学习,
他说没有关系,只要有兴趣就好,他说他认识好几个大牛本科的时候也挂过科,如今github上都有本身的项目了.最关键是要有兴趣,而不是为了钱而去作程序员的.
今日头条 西瓜视频后台开发 一面 3月14日 45分钟
1,map接口常见的实现类有哪些 treemap和hashmap的区别 treemap和hashmap查找的时间复杂度 一个logn 一个o1
2,进程间通讯方式有哪些
3,osi7层模型
4,分页的关键字 limit(x,x) 后面跟的2个参数的含义
5,mysql的索引用的什么数据结构? B+树 为何用b+树? 减小磁盘io 范围查找快 B+树查找的时间复杂度
6,tcp为何是安全的? tcp3次握手具体过程? 包括握手过程当中状态的变化 传输的seq ack
7,Object中的hashCode方法是怎么hash的? Object中还有哪些方法 wait notify notifyAll等 notifyAll方法调用后发生了什么 把对象的等待池中的全部线程唤醒
8,进程间能够共享内存吗?线程间能够共享内存吗?
9,两个字符串怎么比较相等 用equals 为何不能用==
10, http内容分红哪几块 请求和响应 请求分红请求行 请求头 实体内容 请求行里有什么? http经常使用的状态码有哪些?
11, 剑指offer或leetCode原题 复杂链表的复制 手写
总结: 今日头条的面试是出了名的难,去以前就以为可能很难经过面试,可是没想到一面就跪了,由于考个人算法题没作出来,可是面试官是个人学长,感受仍是很亲切的,他也说见到我很亲切,
去哪儿 机票部门后端实习 1面2面+hr面 3月15日 2小时
1,spring 注解都用过哪些 ssm框架怎么整合
2,springMVC controller介绍 处理流程
3,讲一个动态规划的例子 黄金矿工(0-1背包问题) LCS 写出方程组
4,动态规划的思想 动态规划为何时间复杂度低 避免重复计算
5,threadlocal为何能实现变量拷贝 底层实现是什么
6,volitile用在什么场景 http://blog.csdn.net/vking_wang/article/details/9982709
7,经常使用的线程池有哪些 线程池中参数介绍
8,Future Callable 讲一下 http://souly.cn/%E6%8A%80%E6%9C%AF%E5%8D%9A%E6%96%87/2015/06/06/java%E4%B8%ADfuture%E5%92%8Ccall%E7%9A%84%E5%88%86%E6%9E%90/
9,手写 线程安全的单例模式
10,介绍一下storm
11,一个二维数组 行表明用户 列表明物品 数组中的值0表明没买过 1表明买过, 写函数实现给定一个用户 返回和他最相近的用户 再写个函数实现给 输入的用户推荐物品
总结: 我面试的部门是去哪儿的机票部门里负责用户退改签高并发处理的,面试到去哪儿个人算法功力已经恢复了一点,因此考个人算法题算是写出来了,直接就到了hr面,她让我下星期就去上班,我当时在等其余offer,就说能不能4月份再去,在这个问题上两人扯了一会,最后说到最迟下下周去,她又问我还去哪边面试过,我说小米 美团 网易这些都去过,可能hr面让hr以为我之后不会留下来,仍是说我哪里让她不爽了,几天后得知最后被她刷了,当时一面面试官也不知道我被hr刷了,面试完还请我吃饭跟我说何时来提早跟他说下,可能我当时心里已经决定要转大数据了吧,若是他们给我发offer我后面也不会去了,这是真心话.