关于字节跳动内推实习校招的更多小问题记录+部分面经

关于字节跳动内推实习校招的更多小问题记录+部分面经

以下记录了最近同学们关于投递字节跳动遇到的各种问题:简历、面试、校招、实习、日常实习、福利待遇、其他。

简历

直接上干货

  • 要求简洁不花哨,中文一面,或中英两面,格式pdf,全文内容紧扣投递的岗位,详细写实习经历(可以没有)1-2即可、项目经历2-3个即可、专业技能岗位相关即可,获奖挑一两个重要的与岗位能力相关的,在校经历与岗位无关的可不写,内容不要贪多求精,提高HR阅读速度和筛选率
  • 要求基础信息完成,便于系统自动分析上传,包括学校学院专业学历毕业年份联系方式邮箱
  • 关于简历作品内容,建议记载到博客或github后制作链接与二维码嵌入简历,即最终上传简历是一份单/双页pdf而不是压缩包
  • 邮箱投递简历,简历格式与正文内容格式严格按照要求不要包含多余噪声信息。
  • 岗位的选择很重要,考虑清楚个人能力喜好未来发展环境
  • 使用工具超级简历,此处应有广告费,以下简历就是用这个做的关注内容即可
  • 我的简历脱敏版(个人简历样子,仅供参考,大概这种风格简洁完整即可)

面试

  1. 面试过程是怎么样,需要做什么准备?
    (特指校招)3技术面+1hr面,内推到发起面试一周左右,一面到结束10天左右,全程16天左右;通俗来讲需要408基础(我是考研出来的)+一门语言深入理论了解+算法基础;经验参考牛客网面经大全挨个看做记录

校招

实习

  1. 目前大三,暑假实习还有名额吗?未来考虑保研出国值得去么
    名额hc充裕,个人比较支持,提前进入公司感受文化,短期内技术能够提升很大,拓宽眼界

日常实习

  1. 我保研了、考研中、要出国也能去么
    非常支持,欢迎加入,可以投递日常实习体验生活有利于研究生生活

个人客户端面经(部分)

记录了全程看过的题目仅供参考
301 302
https://blog.csdn.net/ai2000ai/article/details/80242193
1.自我介绍
2.专业是什么
3.从事过客户端开发吗(当然没有)
4.static用法
4.普通方法和静态方法有什么区别
5.静态内部类和普通内部类的区别
https://blog.csdn.net/vcliy/article/details/85235363
6.JVM垃圾回收算法,优缺点
存活判断:主 可达性,引用计数器+-1
1.分代收集 15次年龄存活时间
monir
新生代
2.复制算法 full gc majorgc,eden-s0-s1 8 -1 -1
先分配到eden,不够到old
Gc 到s0,不够到old
存活15次到old
连续空间-空间浪费利用率低
major
老生代
3.标记整理 慢-连续空间
4.标记清楚 快-碎片
https://blog.csdn.net/s3395719/article/details/80640455
https://www.cnblogs.com/yy3b2007com/p/10975870.html
7.写一个单例模式(写了饿汉式)
8.HashMap了解吗,聊下原理,扩容,哈希值等等
添加:hashcode -桶-找equals-有该-无尾部
https://blog.csdn.net/u014532901/article/details/78936283#31-%E5%AE%B9%E9%87%8F%E5%BF%85%E9%A1%BB%E6%98%AF2%E7%9A%84%E5%B9%82
https://www.cnblogs.com/ganchuanpu/p/8908093.html
https://blog.csdn.net/lijizhi19950123/article/details/78209278
9.线程和进程的区别
10.如何实现线程同步(synchronized和ReetranrLock)
https://www.cnblogs.com/luckypo/p/7657098.html

runing不存在问题
https://mp.weixin.qq.com/s?__biz=MzU4MDUyMDQyNQ==&mid=2247484215&idx=1&sn=2323d16b0e867baa5a152e926d398e57&chksm=fd54d3b1ca235aa79bf80a0c5c0c4659915bf994ec5a238b7aae1e6a18184c39909c6677bb43&scene=0&xtrack=1&key=af995e53853344b5f6d8f74ee64850b4f80f7182aa04658a4591811bed1f1d6723dcc5882656872d4cac4e1369685386b12d54789f77e4f6a994a154e6a4ee88343110a64f21b9a4d2ae7932c0c51a14&ascene=1&uin=ODEzMzE3OTc%3D&devicetype=Windows+10&version=62060833&lang=zh_CN&pass_ticket=%2FmxvoMvaRIx8ELIFwoajPh1MtdFTGO7bueEeQ6tKZPE%3D
11.synchronized关键子修饰普通方法和静态方法有什么不同
12.volatile了解吗,聊一聊
13.能保证线程安全吗
https://blog.csdn.net/weixin_40459875/article/details/80290875
14.写个双锁检测的单例模式
15. get和post的区别
16.http基于tcp,tcp如何保证安全可靠
17.tcp连接建立过程
18.手写算法:将两个字符串表示二进制书想加,输出对应和的二进制数(不难,但是太菜,写的有点久)
大概就是这些问题,期待收到二面通知
https://www.cnblogs.com/kucoder/articles/4973146.html
不会的:
安卓:
启动方式
java:
Java8 新特性
Base64
lambda表达式
接口静态方法和默认方法
Stream流
并行数组
并发类拓展
Optional
注解改变

https://blog.csdn.net/ZytheMoon/article/details/89715618
Object 方法
https://blog.csdn.net/qq_33098049/article/details/82664061
方法摘要
protected Object clone() 创建并返回此对象的一个副本。
boolean equals(Object obj) 指示某个其他对象是否与此对象“相等”。
protected void finalize() 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。
Class<? extendsObject> getClass() 返回一个对象的运行时类。
int hashCode() 返回该对象的哈希码值。
void notify() 唤醒在此对象监视器上等待的单个线程。
void notifyAll() 唤醒在此对象监视器上等待的所有线程。
String toString() 返回该对象的字符串表示。
void wait() 导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
void wait(long timeout) 导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过指定的时间量。
void wait(long timeout, int nanos) 导致当前的线程等待,直到其他线程调用此对象的 notify()
方法详细信息

来自 <https://blog.csdn.net/qq_33098049/article/details/82664061>



hashmap底层
和 linkedhashmap双向链表,作用
如何让HashMap变成线程安全的?

来自 <https://blog.csdn.net/u010653908/article/details/53419685/>


https://blog.csdn.net/lijizhi19950123/article/details/78209278
线程池 四种
Running
Stop
Shutdown
Tidying
terminated
https://blog.csdn.net/shahuhubao/article/details/80311992

jvm虚拟机 数据区
多重锁
备注:
接口允许静态常量
算法题,圆桌报数问题,123出去,123出去,最后剩下谁

一面准备:
无序中位数:即第k大、第k小问题 分治实现,快排方法分组寻找;方法二:维护k个的最小堆,比堆小的不管,否则替换放进去维护
二面准备
深拷贝浅拷贝
https://blog.csdn.net/u014727260/article/details/55003402

4.算法题:俩线程分别持续打印奇数和偶数,实现俩线程的交替打印(从小到大)
https://blog.csdn.net/yzpbright/article/details/104541866

代码块和父类子类
执行顺序时机
https://www.cnblogs.com/ysocean/p/8194428.html
Java如何正确停止线程?
Thread.java类中提供了;两种方法进行判断,分别是:interrupted()和isInterrupted()方法。
Interrupted():测试当前线程是否已经中断。执行后具有清除中断状态的功能。
isInterrupted():测试线程都否已经中断。没有清除中断状态的功能。

来自 <https://blog.csdn.net/qq_39975542/article/details/81748711>


作者:1衬1
链接:https://www.nowcoder.com/discuss/309832
来源:牛客网
TCP和UDP的区别?本质区别?可靠性等等相关
TCP的四次挥手?
http的状态码是否了解?3开头指的是什么?重定向
介绍一下hashMap?具体一点介绍添加操作和resize?是否是线程安全的?如何实现线程安全的hashMap
concurentHashMap?线程安全是如何实现的?
https://blog.csdn.net/qq_41737716/article/details/90549847
Http 状态码 3
https://blog.csdn.net/snowin1994/article/details/86478256
不开辟空间怎么实现循环右移 n 位
https://blog.csdn.net/yanjie415876780/article/details/52433098
榨汁机
https://blog.csdn.net/shichen2010/article/details/82946010
Ipv4
https://blog.csdn.net/zitong_ccnu/article/details/47393231?utm_source=blogkpcl13
twosum
https://blog.csdn.net/weixin_30480651/article/details/99424656
第k大个数
1.维护最小堆
2.排序选取k
3.选择排序k次
4.快排分治 左右两组递归
各种锁
https://www.cnblogs.com/jyroy/p/11365935.html
https://www.cnblogs.com/luckypo/p/7657098.html
可重入锁
https://blog.csdn.net/weixin_39214481/article/details/80489586
线程池
https://www.cnblogs.com/theRhyme/p/9444429.html
https://blog.csdn.net/qq_31753145/article/details/50899119
jvm运行时数据区域
https://blog.csdn.net/qq_41701956/article/details/81664921
方法区,类信息,常量,静态变量,编译后的代码
虚拟机栈 jvm调用方法,建立栈帧存在局部变量,操作数栈、动态链接方法出口
本地栈 和虚拟机无关与平台有的native
程序计数器
堆,对象实例和数据,逻辑连续,内部划分线程私有分配缓冲区
类加载
https://blog.csdn.net/qq_41701956/article/details/81664921
native关键字
https://blog.csdn.net/zw6161080123/article/details/80628069
Http https
https://blog.csdn.net/xiaoming100001/article/details/81109617
Http
https://blog.csdn.net/qq_38265137/article/details/93379922
红黑树应用场景
https://blog.csdn.net/zuochao_2013/article/details/80562092
单链表逆序
https://blog.csdn.net/cangchen/article/details/45040259
三指针改方向
递归
Java 序列化格式
Json xml 原生二进制码
为什么序列化,安卓序列化
Java Serializable,频繁gc,大量临时变量,持久性
安卓 parcelable,不保证持久性,数据,存在磁盘不好
intent传递对象
putSerializable
putParcelable
https://blog.csdn.net/duoluo9/article/details/54340471
ASCII Unicode
https://blog.csdn.net/skh2015java/article/details/80500482
https://www.cnblogs.com/xiaofuzi123456/p/11357402.html
json格式
{} []
序列化id
https://www.oschina.net/question/234345_51272
线程数据共享和数据隔离
https://blog.csdn.net/xcymorningsun/article/details/87935017
JNI
Java native interface c++
https://blog.csdn.net/dmw412724/article/details/81477546


二面:
算法题:100万数组在内存中,前100个最大数
答:方法一,原数组建立最大堆,方法二,100数组维护最小最,方法三,快排锚点随机选取,分治()
不会的:
java
互斥锁自旋锁
面向对象5个原则
面向对象设计原则
面向对象三个特性
操作系统内核态用户态
jvm类的加载
多态的原理
死锁
反射机制
Throwable error exception
安卓:
Intentservice
Service bind unbind作用区别
界面和数据绑定
Layout grivity | grivity
布局了解么,除了还有什么,constrainlayout原理?区别优缺点


jvm中多态实现原理
https://www.cnblogs.com/serendipity-fly/p/9469289.html
https://www.cnblogs.com/zouwangblog/p/11150623.html
快排
https://blog.csdn.net/HD243608836/article/details/88891557
对于swap 加减法,对于相同位置不适合必须中介
可以用
array[i] = array[i] ^ array[j];
array[j] = array[i] ^ array[j];
array[i] = array[i] ^ array[j];

Swap
Find_q while (low<high )high--  low++  return low
Sort low>=high return

三面
n矩阵打印回文
浏览器输入一个地址过程
状态码
提问
我的不足和需要改进的地方
关于flutter看法和未来安卓发展看法





#字节跳动##校招##实习##面经#
全部评论
确认是校友
点赞 回复 分享
发布于 2020-04-21 17:10

相关推荐

09-27 16:20
已编辑
杭州电子科技大学 运营
点赞 评论 收藏
分享
09-05 17:51
小米_人力资源
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
08-15 16:48
想要一个AK:问题很多加微信私聊 (一个赞十道算法题,我看看有多少)
点赞 评论 收藏
分享
5 18 评论
分享
牛客网
牛客企业服务