首页 > 编程知识 正文

字节跳动研发笔试题,字节跳动前端面试题

时间:2023-05-03 17:48:40 阅读:24019 作者:518

三面之上

面试岗位是后台研发工程师,地点选择了上海,通过大佬内推,跳过死亡笔试,加上疫情期间,所以直接视频面,从3点开始,断断续续到晚上8点结束。

一共三轮技术面试,每一轮都要写代码,也喜欢问一些底层知识,让我有点懵逼。

一面:

请写一个问题,找出无序数组的中值并写下快速的列,然后让你找到无序数组中第k大的数字。 我说先排序再找。 实际上可以使用快速列的partition函数。 快速列的时间复杂度,最坏的,最好的,堆栈排序的时间复杂度,建立堆栈的复杂度是多少? 你知道操作系统吗? Linux和windows正在谈论Linux的磁盘管理。 我粗略地说了一下Linux有什么进程通信方式,五个Linux的共享内存是如何实现的。 共享内存实现的具体步骤是,虽然说没有使用过socket的网络编程,但是让我们试着TCP的3次握手和4次握手。 跳过互联网,听项目中的一些东西,听如何把docker讲清楚,我就从物理机、虚拟机到容器的具体实现说了几句。 请问cgroup在linux上的具体实现。 不能。 多线程用过什么? chm和countdownlatch在实习中学习二面:

自我介绍了哪个Java集合类是线程安全的,这些集合类、hashmap是如何实现的、MySQL索引的实现、innodb的索引和b tree索引是如何实现的分别说明为什么使用b tree作为索引节点、一个节点上存储了多少数据、大小是如何规定的、以及是否与磁盘页相对应。 MySQL的事务隔离级别。 分别解决哪些问题? Redis知道吗? 如果Redis有1亿个密钥,使用密钥命令是否会影响在线服务,我说可以。 因为是单线程模型,所以可以部署多个节点。 问问有没有实现以上功能的命令。 您是否不知道Redis的持久化方法、aod和rdb、具体如何实施、添加日志和备份文件以及底层实施原理? 不清楚。 Redis的列表是怎么实现的,是用ziplist quicklist实现的,还是用ziplist压缩空间,用quicklist实现链表? sortedset是怎么实现的,是怎么用dict skiplist实现的,也许是问了skiplist的数据结构,说了要实现简单的高速查询结构。 你知道什么消息队列,rmq和kafka吗? 没到写问题的时间。 第一题:写程序遍历。 第二个问题:写下插入树从节点到排序树的插入方法,递归地找到插入位置即可。 第三题:一个有向图用邻接矩阵表示,且是权重图。 现在,问一下如何判断图中是否有环境。 第四题:在二叉树中,找到二叉树中最长的路径。三面:

三面面试官真冷啊。 你可以随便笑,但我问他也不理他,所以我的心慌了,比较起来,感觉很冷淡。 介绍你在项目中谈到的同时技术。 chm和countdownlatch是如何使用的,为什么这样处理,不是可以使用线程池吗? 他说系统的过程通信方式也可以操作。 僵尸过程和孤儿过程是什么? 如何避免僵尸进程? 他说让父进程显示通知。 父进程是怎么知道子进程结束的? 我不能回答。 计算机网络TCP和UDP有什么区别? 为什么迅雷下载是基于UDP的? 我说FTP是基于TCP的,但是迅雷是p2p,不需要像TCP那样可靠的传输保证。 他说错了。 我说建立连接是不是需要费用,但他说错了。 他说因为p2p的发送节点很多,所以不那么需要各种传输保证,但他错了。 TCP会自动分包,但TCP说可以自己定义数据长度。 他还是错了。 最后他说他算了。 问问下一个人吧。 操作系统死锁要求,如何避免死锁。 要写LRU缓存,必须完成超时和LRU处置。 我说lhm可以吗,他说linkedlist和hashmap可以。 于是我写了put和get函数,进行了团队领导的末尾操作。 他说get是不是太复杂了,我胡说了半天没找到办法,他说就这样,今天面试到这里。 过期淘汰的处理还没写,告诉我已经结束了。 变凉了呢。 我说能不能结束剩下的逻辑,他说不用。 心都凉了。 (~ 然后就是HR小姐姐让我等结果了。感觉不对,应该是凉凉~~~

四方蚂蚁

有了前边头条面试的经历,自己也恶补了一些面试常见问题,这次决定试试阿里,毕竟面试不通过不亏,侥幸通过血赚啊。

面试岗位是研发工程师,直接找蚂蚁金服的大佬进行内推,参与了阿里巴巴中间件部门的提前批面试,一共经历了四次面试,拿到了口头offer。

一面:

自我介绍。 你在项目上做了什么? 你觉得难点在哪里? 根据Java线程池,每个参数的作用是如何完成的? Redis讲述分布式系统的全局id是如何实现的。 用zookeeper是怎么实现的,机器号码时间戳就可以了。 分布式锁定的方案是redis还是zookeeper比较好? 集群部署时,高并发性时哪个性能好? kafka知道吗? 你知道哪个消息队列? 你想做业务还是研究? 然后出现了问题。 linux的权限为rwx格式。 使用类支持添加/删除权限复查,并注意所用数据格式和方法的效率和规范。 写了一个多小时的作业。 需要将近30分钟。二面:

介绍你做的项目及其难点。 上次面试官提出的问题,反射的作用是什么? 数据仓库、多线程、并发

工具等。私有云,docker和k8s等。了解哪些中间件,dubbo,rocketmq,mycat等。dubbo中的rpc如何实现。自己实现rpc应该怎么做dubbo的服务注册与发现。问了些排序算法耗时将近30分钟。

三面:

三面不是面试,而是笔试,耗时三个小时,考的是Java核心的基础。但是好像不能透题,就不说了。都挺有难度的。

大概说一下就是有几个考点,Java并发的知识点,集合类,线程池,多线程、高并发之间的通信等。

HR面:

聊人生谈理想,HR小姐姐非常温柔,交流十分愉快。30分钟。

最后

wrdpj四到了,送上一个小福利!

资料领取方式:点击这里蓝色传送门

1625674102025)]

[外链图片转存中…(img-KkjQiEbi-1625674102027)]

[外链图片转存中…(img-bPBuoXmj-1625674102029)]

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。