字节跳动 | 客户端研发实习生 — 抖音 一面
发面经攒人品ヾ(◍°∇°◍)ノ゙
总体情况: 40分钟八股文提问 + 20分钟代码题 + 反问
题目汇总:
- 自我介绍
- 对项目提问(讲讲做了什么优化)
- 面向对象语言和面向过程语言的区别(追问面向对象的特性)
- 程序在内存中的分布(忘了,说了普通变量在栈区、new和malloc变量在堆、static在静态区),追问堆和栈的区别
- 简述编译过程(这学期才刚学了两节课,我表示说的可能不太对,面试官说那就换个问题……)
- 讲讲虚拟内存
- 常见的页面置换算法,追问LRU怎样实现(相当于口述力扣题目的解题思路,https://leetcode-cn.com/problems/lru-cache/)
- 已经有进程了,为什么还要引入线程(这个问法一时间没反应过来答得不太好,其实就是讲线程和进程的区别)
- TCP/IP四层协议分别是什么?(追问接口层是否可靠)
- TCP和UDP的区别
- TCP三次握手,为什么不能是两次?两次会导致什么问题?
- HTTP和HTTPS(追问HTTPS为什么是安全,只知道SSL层加解密)
- 哈希构建方法(忘了)、解决冲突映射的方法
- 讲一讲各种排序算法怎么实现(注意时间复杂度、空间复杂度)
- 有八个物品和一个天平,其中7个物品质量相等,还有1个物品比这7个重,用最少的比较次数找出这个物品。
代码题:害,就写了个最朴素的解法
https://leetcode-cn.com/problems/merge-k-sorted-lists/
佛,最后提问环节面试官让我再补补基础,然后问我在上海读书的话岗位投的是哪里,我说上海日常实习,他说好像这个岗位实习招北京和深圳比较多,也许这是什么不通过的暗示吗 :)
#面试经验##字节跳动##面试题目#