首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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++求职圈
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
04-09 22:35
西南石油大学 数据分析师
招银网络面试
实习经历拷打这个功能(单点登录)具体是做什么的?“Ticket”是什么?里面包含了哪些信息?Token存储在哪里?后端如何进行身份认证和校验?Token是明文传输的吗?系统是否会记录用户的登录状态(如登录时间、超时)到数据库?如果没有,如何判断Token是否过期?在拦截器中使用ThreadLocal存储用户信息,目的是什么?ThreadLocal是线程内共享的。如果一个用户连续发起两个请求,它们能被同一个ThreadLocal处理吗?为什么?一个请求处理结束后,是否需要手动删除ThreadLocal中的数据?为什么?八股HashMap是线程安全的吗?请举例说明一个HashMap线程不安全的场景...
查看11道真题和解析
点赞
评论
收藏
分享
04-09 17:07
门头沟学院 Java
4.7智谱华章一二面
一面:感觉没问什么像是被迫来面试我的二面:被拷打完了1.这个skill是怎么测评的?(被说明做这个没有意义)需要有一定的指标,比方说之前生产图片的质量不行,人为进行标注可利用率65%,之后调用完了可利用率到达80%作用,效果非常可观;具体指标这个得根据需求来说,需求覆盖哪些风格,哪些镜头,甚至一致性的,对应出一系列的测试集,可以人工评测也可以用模型去评,重点是评测数据结果。2.最后用户的使用数据?没有评测数据,也没有用户的使用数据,那你这个东西做了和没做有什么区别??命中率是如何提升的?3.所做的任务对于命中率的贡献是多少?4.工作有问题,对结果并不敏感,做了和没做一样。反问:公司的评测标准是...
查看4道真题和解析
点赞
评论
收藏
分享
03-13 18:55
北京师范大学 银行其它
约不到面,求简历建议
真约不到实习,我真服了,27届。求求大佬帮忙看看简历,是不是项目太简单了需要换个项目。想去银行科技想找个后端开发实习扩充一下秋招的实习经历。
点赞
评论
收藏
分享
04-08 15:38
华为_HR
OD面经-Python转C
背景:目标院校25届无经验,参加26考研初试发挥不理想,从其他平台刷到了鱼丸,私聊投递了简历。相关专业无实习经历,最擅长的是Python,项目也是Python的,在校期间和考研期间学过C和C++。机考:因为很久没接触过代码题,花了一段时间熟悉和练习,主刷leetcode的hot100,刷了少量牛客华为题库的题目,从投递到参加考试大概用时是2周多一点。运气比较好,机考难度并没有想象中那么大,第一题考的数,第二题考队列,最后一题感觉比较新颖,题目内容是产品模块算法校验。前两题都AC了,最后一题过了一半,实在懒得调了就交卷了。综测:选择了安静的环境,刚好是心情比较愉悦的时候做的,题目确实比较多,不注...
查看14道真题和解析
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
我感觉我遇到神仙mentor了
1.0W
2
...
入职翼支付2年多,聊聊感受
5261
3
...
招行给AI时代数字金融人的答案
2210
4
...
腾讯云智暑期~
1687
5
...
软件测试简历点评第三期,你以为写的很好的简历,为什么约不到面试呢?
1277
6
...
只有我觉得暑期很难找吗?!
1041
7
...
招银网络面试
909
8
...
暑期结束吧 不想再面了🔚
794
9
...
27届-日常实习-金山云-AI应用平台开发-一面
686
10
...
双非暑期终于结束了
674
创作者周榜
更多
正在热议
更多
#
我的求职进度条
#
983961次浏览
6540人参与
#
携程笔试
#
153424次浏览
888人参与
#
厦门银行科技岗值不值得投
#
18910次浏览
422人参与
#
米哈游工作体验
#
29859次浏览
144人参与
#
拼多多集团-PDD笔试
#
63919次浏览
484人参与
#
哪些公司一直卡在简历筛选
#
105534次浏览
360人参与
#
中国电信笔试
#
40692次浏览
399人参与
#
拿到offer之后,可以做些什么
#
104675次浏览
511人参与
#
入职第一天,你准备什么时候下班
#
118149次浏览
516人参与
#
Agent面试会问什么?
#
37934次浏览
1415人参与
#
一人分享一个skill
#
9783次浏览
243人参与
#
说说你知道的学历厂
#
401357次浏览
1433人参与
#
春招至今,你收到几个面试了?
#
97966次浏览
1239人参与
#
选实习,你更看重哪方面?
#
76748次浏览
505人参与
#
拼多多工作体验
#
55344次浏览
389人参与
#
记录实习开销
#
214479次浏览
1747人参与
#
你觉得专业和学校哪个对薪资影响最大
#
104505次浏览
619人参与
#
给工作过的公司写一条大众点评,你会怎么写?
#
12257次浏览
143人参与
#
TCL求职进展汇总
#
152292次浏览
665人参与
#
通信/硬件的薪资开多少,才值得去?
#
76705次浏览
407人参与
#
面试体验最好和最差的公司
#
25381次浏览
170人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务