字节跳动

1.数据库索引结构
2.B树和B+树的区别
3.进程和线程区别
4.线程状态
5.进程间通信方式
6.未命名管道和命名管道区别
7.讲讲共享内存
8.讲讲Hashmap
9.Hashmap线程安全吗?举例说明,特别是在扩容时会出现什么情况
10.单例模式(写了一个双重锁的)
11.TCP和UDP的区别
12.TCP可以提供哪些可靠传输
13.拥塞控制机制和流量控制
14.synchronized是基于什么实现的
15.算法题(紧张,没思路,主要是刷题太少)
给一个不重复数组,列举出它的全排列
(面试官说用DFS递归,时间到了,结束吧……居然都没有提问环节???是凉了吧)😭

211本硕 实验室用C/C++不用java 自学java半年左右 面试时长80分钟 部门是手游服务端
1.自我介绍,讲项目
2.讲一个c++项目(滔滔不绝5分钟被打断,评价说对项目挺懂的)
3.讲java项目
4.netty(啊啊啊我真的没学到netty,只能老实说不会了,以后一定要学netty了)
5.讲一下数组和链表和区别(这个简单)
6.讲一下hashmap(简单)
7.讲一下线程安全的hashmap(一开始一直说hashtable,后来都到他跳过这个问题的时候突然我灵光乍现想起来concurrenthashmap,所以也算是对了)
8.讲一下hashmap的数据结构(数组链表红黑树逐级扩展)
9.hashmap查找的时间复杂度(O(1))
10.hashmap 的转换过程(初始值16 然后翻倍,然后链表长度超过8转红黑树)
11.手撕代码:撕一个线程安全的单例懒汉模式(撕之……)
12.七层网络协议和四层网络协议的区别
13.TCPIP协议栈在哪一层(tcp传输,ip网络)
14.TCP UDP的区别(这个随便说,不过要多说一点)
15.讲讲restful(面向资源,一个资源一个url,http层,四种操作)
16.http和https的区别(一个是加密的,一个是明文)
17.htttps 的加密方式(我说了一个ssl,因为没用过,所以也没法细说)
18.redis有哪五种数据结构
19.讲讲redis sorted set (有序的set)
20.如果要实现一个redis的排行榜,可以用到哪种数据结构(我说了sorted set)
21.用sorted-set实现一个排行榜需要注意哪些问题(我觉得是并列问题的解决,面试官说对的)
22.简述一下什么是死锁,死锁出现的原因(这个简单)
哈哈哈接下来我的骚操作简直堪称人生至暗时刻!!!!手撕代码!
实现一个栈时间复杂度O(1) 可以push(),pop(),getmin()。我看了这个题之后他让我先说思路,我说用辅助栈,min就可以循环更新,然后!!我装逼说这个题我以前刷过😭
然后就傻了,面试官说以前刷过啊,好的加难度,用链表实现一个栈。然后我就傻了,因为我以前还没写过java的链表,都是用c++写的,然后就硬着头皮写,写了20分钟基本也写得差不多但是很多代码地方我都用了c++的语法😂 面试官说行吧,只要把思路写通就行,最后写到getmin 的时候他说可以结束了,所以也就没撕完 。我感觉这个题真的堪称装逼失败的典型,顺风浪浪死自己啊!!!
总结:字节的题目很重视算法和数据结构,然后就是比较重基础,jvm没问,高并发基本也没问,所以前面的题答得还可以。

7. 一道编程题,输入一串由ABCD四个字随机组成的字符串和一个整数k,返回字符串种前k个字的顺序重复了几次。

三道题 二叉树/快排/作用域
--1.二叉树中根节点到叶子节点其中一条路径和为22,就返回true。 二叉树没有好好准备,这道题直接和面试官说了大概思路,没做出来,跳过了。
这是我现在的思路

一面(60 min):
自我介绍。
介绍第一个项目,面试官说他也不懂,不问了。
介绍第四个项目;reactor 和 proactor 的区别,知道哪些项目是基于 proactor 的吗; epoll 相关;给我看看代码。
内存分配原理。
三次握手和四次挥手。
僵尸进程,孤儿进程。
fork 原理。
线程同步的方法;进程通信七种方法。
Python 生成器和迭代器;Python 代码是怎么执行的。
C++11 新特性。
mysql,B+ 树。
算法题:删除注释。
二面(50 min):
二面面试官人很nice,好多地方我没说好的都会补充半天,最后还给了我一些建议,说不能只顾广度,到最后啥都不精。
自我介绍。
来我们先写几个代码吧(言外之意:你代码写不出来,我们没得聊):
找只出现一次的数字,其他都出现两次;
忘了是啥了,反正是一个二维dp,但是可以优化到一维,我只出了二维。
孤儿进程;僵尸进程,怎么预防,怎么解决。
进程间通信方式。
阻塞 IO 和非阻塞 IO;异步 IO。
一些开放性题目。
职业规划。
三面(30 min):
自我介绍,前两面聊的怎么样。
实验室做啥的;跟着做过啥项目;上过啥课,编译原理数据库学过吗。
网络说一下,七层模型,四层;应用层找一个熟悉的详细说一下。
操作系统说一下,把你了解的说来听听;虚拟内存,页表,TLB;进程调度,CFS。
了解哪些开源项目。
你觉得软件工程和计算机科学有啥区别。
职业规划,毕业要直接工作吗(那不然嘞)。
为什么不做算法(我觉得做算法得博士了,我太菜了)。
为什么不读个博士(不了不了)。
为什么转专业,我觉得你本科这专业可以直接做算法(大佬饶了我吧)。
城市意向。
介绍部门。
交叉面(1 h):
自我介绍。
介绍几个项目,都是自己说了一下,没详细问。
毕业时间,实习情况,实习时间之类的。
算法题:给一个数组,四个数和加减乘除组成表达式,求所有值为给定值的表达式。
进程和线程的区别,应用场景。
长连接和短链接区别,应用场景。
三四个场景题。
意向,兴趣。

[一二面问了很多计算机基础题,一共考了4道算法。三面一直问简历,问的很深。
算法:

  1. 二分搜索变种
  2. 正则表达式
  3. DFS回溯在一个二维数组中计算有几个岛屿
  4. 将二叉树编程双向链表
    大概问的基础知识:
    TCP相关知识,问了很多包括各个机制的原理
    HTTP相关知识
    C++一些知识
    进程通信
    数据库索引(B+树)
    剩下的记不清了,2周前的事情了......
    面试问的计算机基础题,都在我准备的面经里面(70+页 + 一些博客链接)我放在我的GitHub里了,需要的人自己去拿。希望可以给我一颗小🌟,谢谢。
    https://github.com/TG-yang/Interviews
    ](https://www.nowcoder.com/discuss/381765?type=2&order=0&pos=25&page=1)

3-13 视频一面(一个小时左右)
常规自我介绍
期间问了项目的问题:缓存一致性问题、MySQL乐观锁;
问之前实习的一些问题,在实习的时候学到了什么。
Redis 的过期策略、缓存雪崩、惰性删除
MySQL索引、b+树,为什么不用哈希map来存储?
最左前缀原则
(A,B,C)的联合索引,去查 B = 0 和 C = 0,还会使用索引吗?
编程题
SQL,求第二大的薪水
1
2
3
4
5
6
7
8
9
10
11
12
13
Employee
+----+--------+
| Id | Salary |
+----+--------+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
+----+--------+
+---------------------+
| SecondHighestSalary |
+---------------------+
| 200 |
给定一个排序链表,删除所有重复的元素只留下原链表中没有重复的元素。
1
2
3
4
5
6
7
8
9
10
输入 : 1->2->3->3->4->4->5->null
输出 : 1->2->5->null
public class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
next = null;
}
}
3-18 视频二面(一个小时左右)
面试官比较严肃。
自我介绍
怼项目(质疑我的缓存一致性操作,然后我口嗨用消息队列解决并发问题)
手写单例模式-懒汉模式
JAVA的锁、乐观锁悲观锁(视频卡出翔,面试官基本听不到我说啥,然后说我们来先做题吧,我??)
编程题1:最大岛问题(我想了个分治,思路不对,直接爆炸,面试官还是不错的,给我换了道题)
编程题2:股票利润1(还要求写测试用例,要求跑通)
编程题3:股票利润2(可以买卖多次)(这两题都秒了,面前)
TCP的四次挥手
HTTPS
分代回收在整个GC中处于什么位置?
3-18 视频三面(一个小时左右)
二面完也没告诉我过了,还在整理面经,没关牛客,突然就收到面试邀请。
自我介绍、怼项目、Redis缓存
LRU在操作系统怎么实现?
HashMap扩容底层实现
Git 底层实现;如何解决冲突?
设计题:关注系统怎么设计?
可以关注、取关别人
可以查看关注、粉丝列表
可以查看关注、粉丝数
快速判断两个人的关系
如果有大V(粉丝数很多),你的系统有没有问题?或者说如果觉得没问题,为什么没问题?(存储上,使用上)
编程题1:股票利润1
编程题2:股票利润3(可以买卖两次)(查了下,就是股票利润3,hard)
(写了半天,头秃,之前都没做过,想了几个办法都感觉不行,不断地跟面试官交流,好在最后在面试官的引导下写出来了)
1
2
3
给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。
注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
最近有看什么书?接下来什么打算?

全部评论

相关推荐

不愿透露姓名的神秘牛友
2025-12-17 16:48
今天九点半到公司,我跟往常一样先扫了眼电脑,屁活儿没有。寻思着没事干,就去蹲了个厕所,回来摸出手机刷了会儿。结果老板刚好路过,拍了我一下说上班别玩手机,我吓得赶紧揣兜里。也就过了四十分钟吧,我的直属领导把我叫到小隔间,上来就给我一句:“你玩手机这事儿把老板惹毛了,说白了,你可以重新找工作了,等下 HR 会来跟你谈。” 我当时脑子直接宕机,一句话都没憋出来。后面 HR 找我谈话,直属领导也在旁边。HR 说我这毛病不是一次两次了,属于屡教不改,不光上班玩手机,还用公司电脑看论文、弄学校的事儿。我当时人都傻了,上班摸鱼是不对,可我都是闲得发慌的时候才摸啊!而且玩手机这事儿,从来没人跟我说过后果这么严重,更没人告诉我在公司学个习也算犯错!连一次口头提醒都没有,哪儿来的屡教不改啊?更让我膈应的是,昨天部门刚开了会,说四个实习生里留一个转正,让大家好好表现。结果今天我就因为玩手机被开了。但搞笑的是,开会前直属领导就把我叫去小会议室,明明白白告诉我:“转正这事儿你就别想了,你的学历达不到我们部门要求,当初招你进来也没打算给你这个机会。”合着我没入贵厂的眼是吧?可我都已经被排除在转正名单外了,摸个鱼至于直接把我开了吗?真的太离谱了!
rush$0522:转正名单没进,大概率本来就没打算留你
摸鱼被leader发现了...
点赞 评论 收藏
分享
评论
1
2
分享

创作者周榜

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