灵岫科技技术二面\.(过了)

1 自我介绍
2 项目拷打

-高效率如何保证?

时间+空间(内存碎片浪费)

-适用于什么场景?

-和malloc/free相比好在哪?

-是否一定比free/malloc快?

也许不一定,毕竟没有tcmalloc考虑的全面

3 有哪些缓存的算法?

还好考试考的还没忘

LRU(最近最少使用算法)和OPT(最佳置换算法:选择淘汰未来不使用/未来最少使用的)

-能否设计一个LRUcache?

正好没学这个

4 https加密过程

CA认证+非对称加密+对称加密

-效率保证?

只做一次非对称,剩下都是对称

5 最小生成树

prim/kruscal

-时间复杂度?(有点忘了确实)

kruscal一般为O(ElgE)E为边数

Prim算法的时间复杂度取决于使用的数据结构。使用邻接矩阵时为O(V^2),使用邻接表和优先队列时则为O(E log V),适合于边稠密的图。

6 数据库内外链接是什么?

-右外连接结果是什么?

联合查询下右侧的表完全显示

-底层搜索引擎做了什么事?

不太清楚,但毕竟搜索引擎底层是B+树,做笛卡尔积也许可以理解为一颗B+树查询后插入到另一颗B+树上?

说的不太准确 具体参考文心一言上的答案

  1. 内连接(INNER JOIN)
    • 假设每个表都有一个B+树索引,分别基于连接条件中的字段。
    • DBMS会遍历一个表的B+树,对于树中的每个节点(或叶子),它会使用连接条件中的值去另一个表的B+树中查找匹配的项。
    • 如果找到了匹配项,则将这些项作为连接结果的一部分。
    • 这个过程可能会涉及到大量的磁盘I/O操作,但由于B+树的高度较低(通常是几层),因此可以相对较快地完成查找。
    • 数据库还可能使用其他优化技术,如哈希连接或排序合并连接,来减少需要比较的行数。
  2. 外连接(OUTER JOIN)
    • 外连接的过程与内连接类似,但DBMS会确保至少一个表中的所有行都出现在结果集中。
    • 对于左外连接(LEFT JOIN),DBMS会遍历左表的B+树,并使用连接条件在右表中查找匹配项。如果找不到匹配项,则结果集中将包含左表的行和右表的空值或NULL。
    • 对于右外连接(RIGHT JOIN),过程相反。
    • 类似地,DBMS可能会使用索引来加速查找过程,但也可能需要处理额外的逻辑来确保所有行都被包含在结果集中。
7 git操作,对应一些分支,合并冲突,有无和别人协作的经验?

没有

8 反问

9 百度网盘等类似的工具,开通会员比不开下载速度要慢,原理?

(抛开可能多加了一些sleep)

我说的是一种类似正向代理服务器的操作

在学校会有学校的服务器,如果某位同学通过百度网盘下载了一部电影,如果学校愿意

它可以把这部电影缓存到学校的服务器,这样其他同学再想下载同样的电影,可以直接向

学校服务器上申请,增加效率

遗忘了有类似p2p技术(面试官提醒了)

具体场景为你和朋友在同一局域网,你想下一部电影,不是直接去服务器找资源,而是

现在局域网的圈子中找其他主机有没有这个片子,如果有,数据就会在内网中发了

距离近,快

10 优缺点


过了,面试官人很好,很有耐心,最后有10分钟的闲聊

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值