首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客719615532号
广州大学 软件测试
关注
已关注
取消关注
大佬
@蒋豆芽:
字节后端实习一面凉经之解答
原帖:https://www.nowcoder.com/feed/main/detail/bc32e9d012e5449e911cb5cd40b720fa1、脏读、不可重复读、幻读是怎么产生的脏读就是,比如两个事务都在操作同一个表,A事务修改了C字段的值没有提交该事务;而B事务也在读取C字段的值,就在这时A事务发生了失败回滚,那么C字段的值返回原来的值,所以B事务发生了脏读。整个过程结束,数据库没有发生任何改变,B事务却读到了奇怪的值,这就是脏读。解决办法是行级共享锁。不可重复读就是,比如两个事务都在操作同一个表,A事务先读取了C字段的值后继续操作下一个字段;而B事务在这个时候修改了C字段的值。A事务再读取C字段的值,发现同一个事务下,竟然前后两次读取不一样,这就很怪异了,这就是不可重复读。解决办法是对事务进行加锁。幻读就是,比如两个事务都在操作同一个表,A事务先读取了表的行数;而B事务在这个时候为表格新插入了一行数据。A事务再读取表的行数,发现竟多了一行,这就很怪异了,这就是幻读。解决办法是对表进行加锁。2、数据数索引数据结构哈希表、红黑树、B树、B+树3、为什么不用哈希表哈希表的优点是查询和更新的速度非常快,时间复杂度为O(1),即常数时间。但是,哈希表的缺点是需要额外的存储空间来存储数组,而且当键的数量过多时,哈希函数可能会出现冲突,导致多个键映射到同一个索引上,影响查询和更新的速度。因此,在使用哈希表时需要考虑哈希函数的设计,以及如何解决哈希冲突的问题。4、除开区间查找B+树还有什么优势B+树只有叶子节点存储数据(B+数中有两个头指针:一个指向根节点,另一个指向关键字最小的叶节点),叶子节点包含了这棵树的所有数据,所有的叶子结点使用链表相连,便于区间查找和遍历,所有非叶节点起到索引作用。B+树中查找,无论查找是否成功,每次都是一条从根节点到叶节点的路径,查找时间复杂度稳定。B+树的叶子节点通过链表相连,所以B+树范围查找比B树效率高。 B树和B+树的共同优点 考虑磁盘IO的影响,它相对于内存来说是很慢的。数据库索引是存储在磁盘上的,当数据量大时,就不能把整个索引全部加载到内存了,只能逐一加载每一个磁盘页(对应索引树的节点)。所以我们要减少IO次数,对于树来说,IO次数就是树的高度,而“矮胖”就是b树和B+树的特征之一,m的大小取决于磁盘页的大小。5、跳表跳表(Skip List)是一种基于并联的、随机化的数据结构,可以用来实现有序的数据集合。它的基本思想是在链表的基础上,增加多级索引,从而提高数据的查找效率。在一般情况下,它的查找、插入、删除等操作的时间复杂度都为O(log n)。跳表的核心是索引,它通过维护多级有序链表来实现。每一级索引是原始链表的一部分节点组成,每一级索引的元素数量都比它下一级索引的元素数量少一半。最上面一级索引只有两个节点,第二级索引有四个节点,以此类推。通过这种方式,跳表在空间复杂度和时间复杂度之间做到了平衡。跳表的查找过程与二分查找类似,先在最高级的索引中查找目标节点,然后通过下降到更低一级的索引再次查找,直到在最底层的索引中找到目标节点或者查找到整个跳表中都没有这个节点。由于跳表的结构不依赖于节点的分布情况,所以它可以用来代替平衡树,实现更高效的查找操作。6、http tcp ip 分别在哪一层具体来说,它们在OSI七层模型和TCP/IP四层模型中的位置如下:OSI七层模型:HTTP:应用层(第七层)TCP:传输层(第四层)IP:网络层(第三层)TCP/IP四层模型:HTTP:应用层TCP:传输层IP:网络层7、tcp首部字段有哪些TCP 首部字段主要包括以下几个部分:源端口(Source Port):占用 2 字节,表示源端口号;目的端口(Destination Port):占用 2 字节,表示目的端口号;序列号(Sequence Number):占用 4 字节,表示报文段中第一个字节的序列号;确认号(Acknowledgment Number):占用 4 字节,只有 ACK 标志位为 1 时才有效,表示接收到的序列号为 ack_num -1 的数据;首部长度(Header Length):占用 4 比特,表示首部长度,用于指示接收端首部的长度,以便在紧接着首部后的数据中定位有效数据的起始位置;保留(Reserved):占用 3 比特,保留为今后使用,目前必须设置为 0;标志位(Flags):占用 9 比特,包含以下 9 个标志位:URG(Urgent):紧急指针(urgent pointer)是否有效;ACK(Acknowledgement):确认序号是否有效;PSH(Push):是否尽快将数据推送给应用层;RST(Reset):重置连接;SYN(Synchronize):同步序号,用于建立连接;FIN(Finish):结束连接;Reserved(Reserved):保留;NS(Nonce Sum):ECN 的 nonce 信息;窗口大小(Window Size):占用 2 字节,表示接收端可以接收的数据量;校验和(Checksum):占用 2 字节,用于检测首部和数据的传输是否有误;紧急指针(Urgent Pointer):占用 2 字节,只有 URG 标志位为 1 时才有效,表示紧急数据的位置;选项(Options):可选,占用 0 到 40 字节,用于在首部中添加一些选项信息。8、进程跟线程的区别进程(Process)和线程(Thread)是操作系统中的概念,是计算机中的基本执行单位。它们的主要区别如下:进程是资源分配的最小单位,线程是程序执行的最小单位;每个进程都有独立的内存空间,而线程共享所属进程的内存空间;进程间通信需要使用进程间通信的机制,如管道、消息队列等,而线程可以直接访问所属进程的共享内存空间;进程的创建和销毁都需要操作系统的介入,而线程的创建和销毁可以由所属进程自己控制;进程上下文切换需要保存和恢复进程的所有状态,而线程的上下文切换只需要保存和恢复部分状态。9、线程有自己的哪些东西每个线程拥有自己的栈段和寄存器组。10、追问栈里有什么我理解栈里存的是局部变量11、Redis两种持久化的比较Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化。Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上。redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF(append only file)持久化(原理是将Reids的操作日志以追加的方式写入文件)。RDB是定期将数据写入磁盘,当redis出现故障时,有一部分内存数据肯定会丢失。而AOF是以日志的方式追加,数据丢失会少很多。对于同一份数据来说,AOF 日志文件通常比 RDB 数据快照文件更大,数据恢复慢一些。不要仅仅使用 RDB,因为那样会导致你丢失很多数据也不要仅仅使用 AOF,因为那样有两个问题,第一,你通过 AOF 做冷备,没有 RDB 做冷备,来的恢复速度更快; 第二,RDB 每次简单粗暴生成数据快照,更加健壮,可以避免 AOF 这种复杂的备份和恢复机制的 bug。redis 支持同时开启开启两种持久化方式,我们可以综合使用 AOF 和 RDB 两种持久化机制,用 AOF 来保证数据不丢失,作为数据恢复的第一选择; 用 RDB 来做不同程度的冷备,在 AOF 文件都丢失或损坏不可用的时候,还可以使用 RDB 来进行快速的数据恢复。以上答案均来自本人专栏:机器学习面试题汇总与解析(蒋豆芽面试题总结)欢迎大家围观:https://blog.nowcoder.net/jiangwenbo
点赞 21
评论 5
C++求职圈
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-11 12:00
广东白云学院 运营
智算基础设施即服务(AI IaaS)市场现状及投资可行性报告2025
2025年7月11日,专注为客户提供市场战略支持的报告出版商“Global Info Research(环洋市场咨询)”发布了【2025年全球市场智算基础设施即服务(AI IaaS)总体规模、主要生产商、主要地区、产品和应用细分研究报告】,报告主要调研全球智算基础设施即服务(AI IaaS)总体规模、主要热门地区的市场规模、主要生产商市场占有率和份额、产品分类规模、下游主要应用规模以及未来发展前景预测。统计维度包括销量、价格、收入,和市场份额。同时也重点分析全球市场主要厂商(品牌)产品特点、产品规格、价格、销量、销售收入及发展动态。历史数据包括2020至2024年,预测数据涵盖2025至203...
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
昨天 16:34
百度提前批 秒挂👋
周日投的简历昨天下午17点接到部门工作人员电话17:30面试面完直接挂
26届校招投递进展
点赞
评论
收藏
分享
06-24 17:38
已编辑
哈尔滨工业大学 产品经理
26硕找实习找了三个月,至今0offer
我愿称为实习悖论➡️大公司实习经历不够➡️小公司说我稳定性差(实习时长我只能3个月,还要回尔滨秋招)求大佬帮看看简历🙏求推荐的岗位🙏工资一点要求都没有,自费实习我都愿意全国可飞,租房子实习
vicky_023:
先说能干六个月进去了再润呗 太老实啦
0offer是寒冬太冷还...
点赞
评论
收藏
分享
06-02 15:53
阳光学院 Java
已老实,求内推
福州25届普本专升本之后更难找工作了前端后端都可以干
求offer的大角牛:
别怪我打击你哥们,你这个简历确实是一坨。
今年形式下双非本找得到工...
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-11 15:37
国企实习第三天,对后端开发失去信心
java后端开发,读研期间自学的java,也没太多实操经验,今天第三天带教老师给了我一个项目的代码让我自己试试实现其中的一些功能,然而这个项目干嘛的我要开发哪里我都还云里雾里,做研发的实习生还就我一个女生平时连饭搭子都没,有点怀疑自己做不来技术了.....
程序员小白条:
还是那句话,实习不懂就问,饭搭子这玩意看人的,实习生要是就一个,那你咋整,有些东西非必要,实习主要看自己适应能力,否则正式了,你更适应不过来,毕竟上班和上学可不一样
实习生的蛐蛐区
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
0实习0面试, 速通拼多多
7878
2
...
关于项目烂大街的那些事
5952
3
...
秋招腾讯TEG提前批(三面挂)
5784
4
...
后端实习到底该干什么啊
5025
5
...
从外包到正式工,从Java开发到私有云运维:我的职场逆袭之路
3527
6
...
双非本应届是如何拿到30
3450
7
...
王侯将相宁有种乎!
2830
8
...
玛勒戈壁得秋天到了吗就秋招。恨不得搁产房外面招聘
2432
9
...
我和妈妈讲以后我可能给不了她一个月1500
2313
10
...
明天五场面试,加油
2245
创作者周榜
更多
正在热议
更多
#
26届的你们有几段实习?
#
24266次浏览
312人参与
#
你后悔自己读研吗?
#
10370次浏览
184人参与
#
你被哪些公司秒挂过?
#
20486次浏览
189人参与
#
月薪多少能在一线城市生存
#
12490次浏览
182人参与
#
如何提高实习转正率?
#
8247次浏览
136人参与
#
你认为哪些项目算烂大街?
#
10007次浏览
210人参与
#
你以为的实习VS真实的实习
#
13592次浏览
140人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
115359次浏览
801人参与
#
面试体验感最好的是哪家?
#
222033次浏览
2368人参与
#
最难的技术面是哪家公司?
#
6703次浏览
61人参与
#
机械人,你拿到几个offer啦
#
37689次浏览
312人参与
#
产品实习,你更倾向大公司or小公司
#
158685次浏览
1962人参与
#
找工作时的取与舍
#
81616次浏览
584人参与
#
你小时候最想从事什么职业
#
103117次浏览
1783人参与
#
机械校招之路总结
#
92570次浏览
1891人参与
#
网申一定要掌握的小技巧
#
9824次浏览
66人参与
#
双非能在秋招上岸吗?
#
219039次浏览
1159人参与
#
金三银四,你有感觉到吗
#
603646次浏览
5913人参与
#
机械制造岗投递时间线
#
23888次浏览
352人参与
#
设计人的面试记录
#
128683次浏览
1355人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务