【小米面经】Java后台

lanqiao 发表了文章 • 0 个评论 • 20 次浏览 • 2018-11-06 11:35 • 来自相关话题

作者:愿闻其详 前言 本科双非,硕士211,电子专业Java后台开发(武汉AI部门)两轮技术面10.9面完 -> 等通知一面(60min)[list=1]项目中用到了MapReduce,讲一下map和reduce的过程你所知道的排 ...查看全部
作者:愿闻其详
前言
  • 本科双非,硕士211,电子专业
  • Java后台开发(武汉AI部门)
  • 两轮技术面
  • 10.9面完 -> 等通知
一面(60min)[list=1]
  • 项目中用到了MapReduce,讲一下map和reduce的过程
  • 你所知道的排序算法有哪些?哪些是基于比较的?
  • 快排的步骤,你认为最关键的一步是哪个?最差情况的时间复杂度?
  • 讲桶排序,桶排序为什么是稳定的?桶排序维持稳定是否需要额外空间?
  • 你所知道的数据结构有哪些?
  • 讲一下红黑树,插入数据时怎么判断红黑树是否平衡
  • 你做过文本分类,用了哪些机器学习算法,讲一下朴素贝叶斯
  • 谈谈对数据库索引的理解
  • 从SQL优化角度谈谈索引
  • 线程怎么同步?
  • 锁有哪几种?可重入锁和不可重入锁的区别?
  • Lock和synchronized的区别?它们都是可重入锁吗?哪个效率更高?
  • 谈谈你对小米的认识
  • 二面(40min)[list=1]
  • 一个服务启动过慢,假设加载了大量的类,你该怎么做?
  • 如果考虑是GC问题,用什么命令?
  • jstat和jmap具体用途
  • 你用过linux哪些命令?linux查看内存的命令
  • shell编程:一个文本中,第一列是字符串,第二列是整数,中间以空格分开,将每列数据按第二列的整数从小到大排序。
  • 手撕代码:给定整型数组,求最长递增子序列长度
  • 谈谈volatile关键字

  • 小结
        小米很早就投了,一直没消息,等了近两个月才收到笔试和面试通知。听说今年小米招的人很多,现场面试的人挺多的,招算法招的很多。一面面得还行,面试官说给我评级S,就是不知道二面结果怎么样。小米总共就两面,有个同学收到了,所以我猜二面估计是凉了。

    java offer已有,下一步---妹子

    lanqiao 发表了文章 • 0 个评论 • 22 次浏览 • 2018-11-01 11:19 • 来自相关话题

    作者:浪哈哈哈前言 西邮本科生,前两年跟着老师学了学C语言,做了做智能小车,大三开始学习Java,当时太年轻,目标春招进阿里,直接把阿里六个价值观当桌面背景半年。上半年看看书,看看视频学习Java基础,寒假刷了刷剑指offer(三分之一,效率太低) ...查看全部
    作者:浪哈哈哈前言
    西邮本科生,前两年跟着老师学了学C语言,做了做智能小车,大三开始学习Java,当时太年轻,目标春招进阿里,直接把阿里六个价值观当桌面背景半年。上半年看看书,看看视频学习Java基础,寒假刷了刷剑指offer(三分之一,效率太低),当大三下真正开始找实习时才发现自己还是很渣的。于是跟几个朋友每天待实验室学习,幸好每天只有一节课,混一混就好了,基本从上午到晚上将近十一点都在实验室。春招
    春招投了很多家,也笔试了很多,但只有三家有面试机会:阿里,CVTE,去哪儿。要么错过了电话,要么没有按照约定面试。有机会霸面的公司也尝试了,虽然没有成功。基本按下面的知识点复习:
    • 剑指offer(第一位)
    • Java基础
    • 虚拟机
    • 并发(多线程)
    • 操作系统
    • 计算机网络
    • 数据库
     面经当时基本没记录,大致说一下吧。阿里内推三面挂,去哪儿一面挂,拿到了CVTE的实习offer,在这里说一下自己对CVTE的感觉(虽然没有体验公司生活):我感觉CVTE还是很好的,福利好,人好。(蹭了人家两顿饭,当然也帮忙了)。 当时以为自己应该会去CVTE的,但当阿里笔试来临的时候还是想试一下,虽然很难,但也连蒙带做的写完了。之后的某一天突然收到了面试通知,那就试一下喽。莫名通过了一面,一面面试官是个妹子,说我不够自信:嗯,得改。在实验室纳新当天开始二面,这一天是5月25日,距离笔试已过去一个月。预约的下午四点,准备了一下参加的一个比赛的内容,看了看面经开始二面+HR面,面完才去纳新现场,基本结束了。 接下来就是漫无目的的等待,又过了一个月,本来不抱希望的我收到了实习录用通知,春招结束了,也放假了。 秋招 9月1号从公司离职,此时的我基础基本忘完了。在回家和回学校之间纠结了几天后,听从朋友的劝说回学校准备秋招。依旧从剑指offer和基础开始吧。接下来就是百无聊赖的投递简历+笔试+面试+总结,当然面试还是比较有意思的哈(只不过经常打滴滴确实心疼)期间对短信声音和电话铃声极度敏感,只要是外地号码就激动。 就这样当有两家等结果之后已经身心俱疲(已get),准备结束秋招了。几天前的凌晨,听到了手机短信的声音,没有在意,肯定又是大街网之类的了,之后打开手机准备日常农药的时候,发现收到了阿里的录用通知,此时距离实习离职25天。内心毫无波动。。不存在的。当晚睡不着了。迷迷糊糊到了第二天,美团HR打电话说昨天霸气的面试现场投简历成功了,让去面试,那就去试一下吧,毕竟霸面基本从不成功,昨天也收到了进录用池子的短信。就这样结束秋招吧。 期间霸面的公司:腾讯2次、去哪儿、小米、中兴、京东,这些都失败了。下面附面经: 美团内推(9.1)
    • 实习经历
    • 泛型的了解
    • 异常相关
    • 运行时类型RTTI
    • 读过什么书
    • 白板写滑动窗口题目,没写出来
     美团的面试是在离职当天,基础忘得差不多了,然后挂。 金蝶(9.9)一面
    • 自我介绍
    • 实习做什么,收获是什么
    • 多态 重载和重写
    • 数据库连接池代码
    • 内连接和外连接
    • 写一条sql查询选择每门课的学生人数
    • 平时是怎么学习的
    • 你的优势
    • 职业规划HR
    • 自我介绍
    • 实习收获,感悟
    • offer会发吗
    • 你是不是有点不自信
    • 大学做过什么项目
     不是很想去。 百度(9.15)
    • 实习经历,感受,收获
    • 算法题(多个爬取的网页及一个学校列表的查询关系) -- 红黑树-kmp
    • mysql建表需要考虑的东西
    • 三范式
    • 一个查询语句需要考虑的东西(查询优化、索引相关)
    • 死锁的检测及解决 (操作系统、银行家算法)
    • Java代码编译过程及class文件加载过程
     基础太差,面试失败。 西山居(9.16)一面
    • 笔试题相关
    • 多线程共享变量不安全原因,底层
    • 实习经历收获
    • 思维发散问题
     感觉挺好,挂 58(9.18)一面(9.18)
    • 自我介绍
    • 继承父类时,若父类只有一个有参构造方法,需要注意什么?
    • 知道Java下的哪些包
    • HashMap和HashTable以及ConcurrentHashMap的区别
    • CAS的底层实现
    • 整数中二进制一的个数
    • Java GC
    • 栈和队列
    • 10万个URL去重
    • TCP的状态?TCP和UDP的区别?TIME_WAIT
    • 进程和线程的区别
    • 实习经历
    • 提问对自己的建议
    二面(9.19)直接问项目
    • 实习,讲一下能讲的项目
    • 讲了下智能小车和一次算法比赛
    • 写个排序
    • 为什么不考研
    • 职业规划
    HR面(9.20)
    • 实习经历
    • 想留下吗
    • 感觉技术在学校是一个什么水平
    • 你感觉写代码需要注意什么
     将近20分钟的样子,慌的很。 小米一面(9.20)第一次霸面成功,先做了一道题,然后等待面试,最后成功开始面试。一间房间里两个人,先给我看一张试卷,满满的算法+智力题,指着其中几道让我看,就去面另一个人了。还是太傻,另一个人在讲他的题的时候,没有听(每个人题目都一样)
    • 汉诺塔,讲了一下思路
    • 平衡树,忘了
    • 1000个饼干,一个有毒,老鼠吃完一周内会死,使用最少的老鼠在一周内找到有毒饼干,没想出来
    • 100个萝卜,一个兔子每次抱50根,从相距50米的起点搬到终点,每走一米吃一根,最多剩多少根?没做出来
    • 输入URL之后发生了什么
    • git相关
    • 讲一下你的优势
     然后挂了,没办法,太笨。。还是没进入面试状态,心态没有摆正。 好未来(9.23)和58同一家酒店,叫号之后去面试官房间。一面太紧张没把简历拿出来,面试官问:带简历了吗,赶紧从书包拿出来。
    • 你在XX实习?介绍一下,然后讲了一下实习的经历,讲了一下部门之间的区别。
    • 会排序吧,先写两个排序(堆排和非递归归并)
    • 写了个堆排,非递归归并排序考虑了一下,说了一下思想
    • 虚拟机内存分配相关
    • Java中判断一个对象死亡,如何解决循环引用的问题
    • 求一颗二叉树的宽度
    二面二面进去坐下,面试官微笑的看着我,我看着他。“没带简历是吧”,赶紧给人拿出来
    • 本科生,西安邮电大学,明年毕业,是吧。先写一道算法题吧
    • 求a的b次方,之前才写过,赶紧写出来,冷漠的说情况没考虑全吧,负数没考虑,大意了
    • 在XX实习做什么的
    • 讲一下这个智能小车是怎么寻迹的,怎么避障的
    • 讲一下Java的内存回收,然后我讲了一下一面的循环引用和GC
    • 感觉这些底层的知识在项目中对你有什么帮助
    • B树和B+树,讲了一下区别和数据库索引,说是从书上看到的
    • 哪本书?平时看什么书?
    • git都知道哪些命令
    • Linux会使用吗
    • 如果过来让你转PHP或go,愿意转吗?愿意愿意
    • 职业规划
    YY欢聚时代(9.25)一面记不清了,回答的挺好,一面就挂了 美团点评(9.26)一面
    • 自我介绍
    • Java中多态是怎么实现的
    • Java中的几种锁
    • 数据库隔离级别 脏读 幻读 ACID mysql的隔离级别
    • mysql索引实现,如何解决慢查询
    • 数据库锁是怎么实现的
    • 死锁的条件,进程和线程区别
    • tcp/ip模型,tcp和udp区别
    • Linux查看网络 内存 日志命令
    • spring中有哪些模块
    • 写一道字符串全排列的算法
    • 两个大文件找重复行
    二面
    • 实习经历
    • 实习期间学到的开发流程
    • HashMap原理及与LinkedHashMap的区别
    • Integer的常量池特性 其他包装类呢
    • String s = new String("abc") 创建了几个对象
    • equals和hashcode的关系
    • 类加载
    • 设计模式
    • 画一下项目的数据库表
    • 数据结构了解多少
    • 写一个二叉树后序遍历
    三面
    • 实习经历
    • 一道求概率
    • 地图导航
    • 判断一个IP是否在黑名单列表中
    • 浏览器中输入URL之后的过程 包括负载均衡 缓存等
    HR面
    • 家在哪里,HR是老乡。。。
    • 聊了聊高考志愿
    • 手上的offer,意向工作城市,如果实习公司和美团都给会怎么选择
    • 提问问题
    •  
    总结怎么说呢,运气成分居多,但也不乏实力的碰撞(认真脸)。总结几点:
    • 基础很重要,很重要,很重要,毕竟我基本是个没项目的人
    • 剑指offer一定要刷完
    • 梦想还是要有的,万一实现了呢
    • 请相信自己

     
    另外说一下实习的优缺点:像我这种懒散的人实习期间是不愿意学习的,周末基本就在网吧和住所度过了,所以实习对我而言收获甚微,唯一有的就是大厂实习的名分了,这个还是很有用的哈,当然最重要的收获是转正offer了。缺点也很明显,没有时间准备秋招,没有时间复习基础,如果留不下就需要好好考虑考虑了。当真正工作才知道学校的日子是多么美好,学生是多么幸福,希望大家没拿到offer的早日拿到,珍惜为数不多的大学时光。浪起来!