关注
面试官应该也是四川人。。跟我唠了会家常
然后专业问题,主要就是Java、MySQL、Linux
问:hashmap怎么解决哈希冲突,
答:1.8之前就是链表法,1.8之后是链表or红黑树
问:那就说老版本。假如产生大量哈希冲突怎么办(链表会很长,查询效率退化到O(n))
答:重写hashcode方法,减少冲突
问:如果不能重写呢,冲突已经产生了,怎么解决,不仅限于Java的hashmap
答:可以用开放地址法(说了线性探查、平方探查)
问:这样效率还是不是O(1)啊
我:...(后来想起来应该时想问我扩容)
问:知道什么容器
答:ArrayList LinkedList(被打断)
问:他们有什么区别
答:底层实现一个数组一个链表,前者查询效率高,增删效率差,后者反之
问:JVM分哪几部分知道吗
答:方法区、Java堆、虚拟机栈、本地方法栈(程序计数器没想起来)
问:还了解Java的什么
答:GC、并发控制(JUC)之类的,然后说了CMS、G1的区别,乐观锁悲观锁,但是面试官好像不怎么感兴趣。
问:刚才说到了锁,知道MySQL有哪些锁吗
答:先说了下事务的隔离级别,然后说了行锁、表锁(这里没答好,估计是想问7种锁),勉强答上来了行锁和间隙锁
问:Linux了解多少
答:只知道一些基本命令行的用法
编程题:给一个无序数组(size = N),输出前M(M<N)大和前M小的数的平均数
我先说了暴力法,即全数组排序,然后问我有没有什么更优化的方法,我就说这本质上是TOP-K问题,分别维护一个大小为M的小顶堆和大顶堆,去遍历一遍这个数组,便得到前M大和前M小的数,之后求平均就行了(用Python撸了半天,小顶堆撸出来了,大顶堆一直有BUG)。之后又问我空间复杂度和时间复杂度,空间是O(M),时间是O(NlogM)。
问:想想有没有更优的办法?
答:如果看成top-k问题,好像还有一种基于快排的方法
问:那好,说说快排,这道题如果用快排,时间和空间复杂度是多少
答:O(NlogN)和O(1)
反问1:面试一共有几轮
答:三轮技术面
反问2:成都这边是什么技术栈
答:Java和MySQL用的比较多
反问3:我有哪些不足
答:Java比较薄弱。。(哭了,问的很偏工程,我看的一些基础知识都没问)
查看原帖
1 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 26届秋招公司红黑榜 #
9968次浏览 33人参与
# 实习必须要去大厂吗? #
146226次浏览 1536人参与
# 未岚大陆求职进展汇总 #
23723次浏览 108人参与
# 校招泡的最久的公司是哪家? #
3943次浏览 19人参与
# 度小满求职进展汇总 #
9928次浏览 49人参与
# 帮我看看,领导说这话什么意思? #
5074次浏览 24人参与
# 智慧芽求职进展汇总 #
16679次浏览 103人参与
# 职场新人体验 #
95720次浏览 642人参与
# 你觉得mentor喜欢什么样的实习生 #
9536次浏览 266人参与
# 没有家庭托举的我是怎么找工作的 #
11800次浏览 156人参与
# 入职第一天,你准备什么时候下班 #
85381次浏览 467人参与
# 从哪些方向判断这个offer值不值得去? #
6267次浏览 91人参与
# 技术岗笔试题求解 #
95370次浏览 1101人参与
# 求职低谷期你是怎么度过的 #
4899次浏览 82人参与
# 最难的技术面是哪家公司? #
54834次浏览 893人参与
# 面试紧张时你会有什么表现? #
1553次浏览 20人参与
# 独居后,你的生活是更好了还是更差了? #
28079次浏览 263人参与
# 机械人的工作环境真的很差吗 #
24906次浏览 119人参与
# 秋招想进国企该如何准备 #
97654次浏览 487人参与
# 你有哪些缓解焦虑的方法? #
37134次浏览 835人参与
# 跳槽时有那些注意事项 #
106091次浏览 567人参与
# 工作压力大怎么缓解 #
117721次浏览 1108人参与