美文网首页Android开发经验谈
2020年8月30写篇文章,记录我的字节跳动客户端面试之旅!

2020年8月30写篇文章,记录我的字节跳动客户端面试之旅!

作者: 程序员面试秘籍 | 来源:发表于2020-09-12 21:59 被阅读0次

前言

面试的姐姐人真的很好了
问的很基础 但是我太菜了
我基本什么都没答上来
还问了我40分钟

一面

  • 自我介绍

  • 问项目

我的第一个项目是编译器 几乎是自己写的。。。一点都没问。。。我挺期待问这个的

第二个项目课设从GitHub撸来改改的sprintboot+vue的web登陆界面(我真不会Java 也不会前端只能改改

项目凑数的就别放上去,不然好尴尬呀。。。

cpp

struct A
{
    char a;
    int b;
    char c;
    int *d;
};
sizeof(A);

sizeof(A)的大小(没回答上来

  • 是否知道 数据存储对齐问题(不知道

  • 结构体存储在哪里?读取结构体需要读取多少次?(最开始不知瞎答的静态区 其实应该是堆区 结构体的存储和类一样的 当时紧张这也没答上来

  • cpp的编译过程是什么(先生成汇编 再生成目标程序.o 最后链接生成exe 漏了预处理的过程 然后具体的没讲出来

  • cpp编译的过程有哪些优化

  • 数据结构(一开始还信心满满

  • 有没有了解过git用的什么数据结构(没有。。。

  • git有个功能是修改已经提交之后的分支 你觉得应该用什么数据结构(口胡 红黑树吧

  • 为什么用红黑树(口胡 因为他快 说了AVL和红黑的优缺点

  • map和数组array的读写效率(我的回答是读写map是logn 数组读写是1 其实我没太理解这里想问的什么东西 她说她的理解和我不太一样

  • 有没有了解哈希函数(最开始说成了哈希表

  • 哈希函数发生冲突怎么办(把发生冲突的用链表 链在后面

  • 如果一个值出现的冲突过多 退化成了on怎么办(我又不知道了

计算机网络

  • 介绍一下http(我又不知道怎么说了 只能把http和https的区别说一下 然后http就很快

  • https是如何实现加密的(通过ssl加密 然后就不会了 然后还口胡了他们是对称加密。。。这是错的

  • 介绍一下dns解析的过程(只记得在在本地找不到就去服务器找

  • 如果本地服务器的数据过期了怎么办(不知道

  • 了解http返回的值的含义吗(100 200 300 302和301是什么 403 404 500

  • 了解ttl是什么吗(不知道

  • 讲一下三次握手(巴拉巴拉

  • 为什么需要三次握手(巴拉巴拉 这两个问题老是答得不流畅 脑子能想出来说不出来 下次得自己写好稿子背好

  • 如果有10个数据需要传输 要建立十次tcp传输吗(对呀 他是点到点的传输。。。我好菜。。。

  • 有没有办法快一点(用UDP?。。。面试官都笑了 那不就不安全了吗

  • 有没有了解tcp连接的复用(不知道。。。

操作系统

  • 有没有了解虚拟内存和物理内存(物理内存是本身的内存 虚拟内存是硬盘上的空间 用来存放页面 通过页面置换算法来操作

  • 讲一下LRU(巴拉巴拉

数据库

  • 数据库多个用户访问时发生冲突怎么办(让他们一个个来。。。

  • 有没有别的方法(加锁

  • 你了解哪种类型的锁(互斥锁。。。没了

手撕代码

  • 简单的一道归并排序。。。

本来以为挂了 然后今天下午收到了二面通知

二面

础知识部分的忘了,反正就是各种挖源码,问原理

  • 介绍一下项目

  • 怎么理解面向对象

  • tcp,udp区别

  • hashmap原理是啥看过源码没有,我就想考察你有没有看过源码

  • handler看过源码是吧,讲一讲,一个线程能不能有多个handler?靠什么实现的?

  • 自定义view的流程说一遍,知道view的绘制原理吗

  • 说说java里的线程同步,随便说

  • 强调看源码在工作中的重要性

三面

  • handler用处(√)

  • handler收到多个外部的消息,怎么把消息分发出去。(√)

  • handler的post和sendmessage方法有什么区别

  • 有了解过handlerthread这个类吗?原理是什么,为什么可以在子线程使用handler?

  • 安卓四大组件(√)

  • service和activity的通信方式是怎么样的?(√)

  • bundle底层实现原理是什么样的?

  • service启动方式,区别?(√)

  • bindservice和startservice生命周期是怎么样的?(√)

  • startservice多次,哪个生命周期会被重复调用?(√)

  • activity启动模式?异同?(√)

  • 除了在代码里可以配置启动模式,还有什么方式可以配置启动模式?

  • 安卓触摸事件分发流程?(√)

  • 有横向滑动和纵向滑动,怎么解决这个冲突?

  • 怎么判断他是向哪边滑动的?

相关文章

网友评论

    本文标题:2020年8月30写篇文章,记录我的字节跳动客户端面试之旅!

    本文链接:https://www.haomeiwen.com/subject/rtdgektx.html