字节客户端开发面试一面

开场先自我介绍,基本上没问项目,问了安卓四大组件、还有一个知识点我不会,完全没见过。问了activity生命周期。

操作系统:

进程和线程的区别

堆栈的区别

lru算法

计算机网络:

https安全相关

get post put相关

数据库 问了一些关键字 以及其他的 讲了讲索引

问了对设计模式了解多少 讲了写过的观察者模式

java相关:

问了垃圾回收机制

对jvm的了解

常用的锁

hashmap的底层实现

什么是哈希碰撞

hashmap查找元素的时间复杂度 我说一般是o1 说考虑极端的情况是多少 我说如果是碰撞小于等于8 o(n),变成红黑树是lgn

还有的忘记了 我感觉都比较基础 不过问的很多很广

手撕:

比较奇怪吧,没有让我做题,就让写了一些比较简单的东西 树啊链表这些不用自己实现 假装已经有了

1. 二叉树前序遍历,一开始用了递归,说不用递归怎么实现 不太记得了 提示了一下用栈 后来想起来要先压右子树

2.手写二分查找 问了复杂度

3.手写判断单链表有没有环 写的是快慢指针版本 问了时间空间复杂度 问还有没有别的算法 说了一个很朴素的用hashset存节点,然后判断next存没存过的想法

最后还问了一下怎么写一个可维护性和可读性高的代码

没有反问环节,说大概了解了我的情况,50分钟结束面试流程

全部评论

相关推荐

我的秋招日记
点赞 评论 收藏
分享
评论
1
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务