字节电商业务-后端开发一面复盘
自我介绍
问一些基础的问题吧
- 标准库的
map是怎么实现快速的键值查找的? - 可以讲一下红黑树是一个什么样的数据结构吗?
答的时候一直在抠细节,没能从整体上把握问题,导致东一榔头,西一棒槌的,很乱,要我现在来答的话,我会这样说:
红黑树作为一种平衡树,和AVL相比,在没有损失太多时间复杂度的前提下,大大的简化了实现的难度,通过几个规则的定义保证了最长的路径不超过最短路径的两倍,保证了相对较高的平衡度(具体是怎么实现的,巴拉巴拉...)
(中间还抢面试官的话了,他想问,我一直在讲,啊啊人没了) - 为什么说红黑树的查询复杂度是log n?
- 除了红黑树还有什么能实现键值查找的数据结构?
- 哈希表是怎么实现的?键和值是怎么存储的?
回答这个问题的时候一直在问东答西 - 有哪些常用的哈希算法?
- C++是怎么做内存的申请和释放的?
- 讲一下智能指针
- 了解python的内存管理吗
- MySQL的索引是怎么实现的?事务了解吗?
- 讲一下Django的MTV模型
- 你的网页怎么部署到服务器上的?
先胡说八道了几句,才想起来自己用的nginx,然后说自己是把http重定向到了https,面试官问为什么要重定向呢?那浏览器不是得请求两次?(根据面试官的意思好像这个做法是错误的)
Django这个框架有了python环境就能跑吗?有用uswgi吗?uwsgi有什么用? - 编译器和解释器有什么区别?
- 能否把解释器理解为一行一行的执行的?
编程题
总结
平时和同学探讨交流的太少,面试的时候有点紧张,然后思路混乱,问东答西,寄寄了
#面试复盘##实习##字节跳动##后端开发#
