2022.08.21 二面挂了 简单说说二面。 1. 问了update的过程(和一面一样,但是太紧张了一下子没反应过来,后来慢慢进入状态了) 2. 问了范型,以及怎么实现范型的(类型擦除) 3. 来了个算法题 4. 介绍项目中的难点,我说了选netty的原因,然后为什么用消息队列,怎么用的,数据库为什么要分表,按照什么原则分的 反问环节 结束 1h后挂了 orz 因为问得比较少,所以没什么特别能说
1.自我价绍 2.项目介绍,主要难点 3.深挖ThreadLocal , 3.1底层原理 3.2内存泄漏的场景 3.3为什么虚引用了还要remove 3.4父线程的ThreadLocal子线程可以用吗 3.5IheritableThreadLocal原理 3.6线程池里的线程能用IheritableThreadLocal吗 4.开始深挖线程池 4.1阻塞队列 4.1数组有界阻塞队列和链表无界阻塞队
快手面试体验真的是太好了,是我目前感觉最好的面试体验了,二面没有自我介绍直接上代码 1. 看代码说输出,一个不同方式调用访问变量的问题,通过函数调用对象内部函数或者直接调用函数内部函数,有this有直接变量(面试官带着整个代码读了一遍,带着分析,但关键时候输出也会让自己说,中间会穿插着问一些八股) 2. 使用递归和非递归的方式实现一个类似于斐波那契数列的问题(忘了叫啥名了),公式是F(n) = F
1. 对岗位的认知 2. 对岗位有什么问题 懵,怎么先到QA环节了??? 3. 怎么自学的 4. 如果C++满分是10分,给自己打几分? 7分 5. 扣的分数在哪里? 实践少,STL算法部分没有去深入研究,C++17 C++23 6. virtual 怎么实现动态多态 7. 虚函数表查表的时间复杂度是多少 没回答上来 8. 手撕快排 9.快排的时间复杂度和空间复杂度 空间:最坏O(n) 平均O(l
一面表现非常一般,没想到还有二面【汗😓】,最近做毕设没时间准备,硬着头皮面了。 自我介绍 自我介绍完了,问我机械工程专业学过哪些计算机相关课程。 拷问 CPU缓存 CPU有缓存是为了什么,缓存一致性问题。(没看过这部分内容,只能用MySQL和Redis的一致性来答) LinkedList 底层实现,对比ArrayList的特点,能不能提高他的查询效率(用LinkedHashMap和跳表答了) L
一面 1.读取文件的时候,操作系统会做什么? 2.用户态、内核态 3.依赖注入的三种方法? 4.什么是依赖,什么是注入? 5.循环依赖怎么解决?三级缓存不了什么注入方法? 6.JWT如何验证Token的有效性?防止Token被篡改? 7.线程池中核心线程数,用户请求量减少了,这些会怎样变化? 8.线程池的参数是怎样设置的? 9.怎样使用线程池?有什么方法提交任务? 10.Runnable和Call
部门:电商 1.项目单点登录介绍,如果自己实现不用keycloak托管怎么做 2.深挖性能优化,火焰图,performanceAPI,代码http图片webpack所有的性能优化相关 3.react和vue你认为上手的区别(这个被问到好多次了) 4.微前端概念,解决了什么 5.ahooks印象比较深的hooks 6.react18新特性有无了解 7.自己做的性能优化,效果怎么样优化了多少 面试官看
八股相对比较少 都是开放性问题 包括对ai在接口测试的一些思考 手撕最长回文子串 说思路就行没让写代码 然后智力题 一杯糖一杯盐 都挖一勺 糖里盐多还是盐里糖多 攒攒人品
刚刚收到感谢信 ----------------- 1. 深挖实习经历(将近30分钟),很多细节已经遗忘 2. 现场手写测试用例-电商相关 3. 问了一下八股,答得都比较浅 4.算法 一道双指针,版本号比较没写出来 5.反问 #快手测开#
自我介绍 项目工作聊了20分钟 三道题 1、写一个字典树,实现插入和查询 写完面试官说性能差,让我从各个方面说说怎么改进(说不上来,来了句“行吧,那再看一道题”) 2、合并两个二叉搜索树,结果尽量平衡 开始想着先直接合并,在旋转,还好面试官说复杂度太高,反正我也写不出来 然后提示我利用二叉搜索树的性质,就写了中序遍历各存一个数组,合并完数组,重新建树,面试官说能怎么优化一下,我问能不能在提示一下,
深挖研究生项目,深,实在是太深了(插桩,寄存器,栈溢出等)--- 答的太烂了 工作,实习经历 C++防止重复引用 静态链接库/动态链接库 gcc编译参数 GET和POST的区别 URL长度有限制吗 进程同步机制 聊了50多分钟,发现一面做了很多题,就没有让手撕了 明确回复xxx时间之前出结果,期待一手 先帝不以臣卑鄙
1. 自我介绍 2. 介绍一下实习工作内容 3. 项目的难点 (项目实习简单带过了,没问一点) 4. String a = "str_a", String b = new String(a + "str_b"); 创建了几个对象 5. List 和 map的实现类 和各自的底层结构 6. ArrayList和LinkeList的区别 7. Redis、内存和磁盘区别 为什么快 为什么慢 8. Re
项目 函数式编程的理解 高阶函数的原理 kotlin与JavaScript的联系(函数方面) 单向数据流的理解 compose和view的写法区别 compose的写法是如何实现的 (答:kotlin DSL 但貌似不是这个)
项目 compose和view写法的优缺点 使用recycleview碰到的问题 glide的缓存加载机制 compose实现音乐播放栏固定 安卓glide中与生命周期的关系 java 双亲委派(写一个路径名字一样的String,new String()会创建自己写的还是系统的) 受检异常和非受检异常 抽象类和接口的区别 koltin 作用域函数(应用场景) 高阶函数(概念) kotlin和jav
4/19 二面 35min 自我介绍 用的青雀面试系统会涉及到哪些网络协议 https与http区别 ssl协议加密过程 代理中间人攻击 如何防止 进程与线程区别 什么是内存泄漏 进程间通信方式 编程:n个线程打印1-n(第i个线程打印i) syn锁锁不同东西的区别 syn锁锁升级 mysql中有哪些锁 IOC 设计模式 算法:需要最少会议室数量 算法:编译距离:两个字符串要修改成相同需要修改的次