OPPO 后端开发 一、二、HR 面面经 (已 OC)
文章目录
- 一、前言
- 二、一面
- 三、小插曲
- 四、二面
- 五、中场休息
- 六、HR 面
- 七、小结
一、前言
OPPO 我参与的是南京的线下面试,因为投递的时间比较晚(10.8),所以笔试都没有让我做,直接让我过去了
线下面分为两天,第一天技术面,第二天是业务面和 HR 面
除了技术面之外,业务面和 HR 面对于我来说都是新的东西
闲话少说,咱们打板儿就唱哦
二、一面
1、自我介绍
年龄,学校,专业,技术栈,竞赛,项目,实习
2、怼项目
3、实习负责的模块,具体讲一讲
js 逻辑核查引擎,讲了一下大概的业务
4、算法题:找众数,数据大约 10000 个(其实多少个都无所谓)
方法1:
使用 map ,统计每个数出现的次数,然后返回出现次数最多的那个数
空间 O(n),时间 O(n)
方法2:
排序,然后遍历统计
空间 O(1),时间 O(nlogn) <在使用快排或归并排序的情况下>
我为了求稳,写了一个归并排序
方法3:
使用大根堆,后面的逻辑和方法二类似(这个方法有点炫技,堆排序和构建不熟悉的同学不要写,不然可能会自己打自己脸)
空间 O(1) 时间 O(n),这个照理说是最优解(但还是那句话,堆构建除非自己十分熟悉,否则不要写!!)
5、创建线程的方法
继承 Tread 类,实现 Runnable 接口,实现 Callable 接口
然后重写 run 方法,调用 start() 方法
6、还有什么方法
可以使用线程池
7、介绍一下线程池
四个讲了一下,并对 ThreadPoolExecutor 多费了些口舌讲了一下其中参数的含义
8、线程怎么按照顺序启动
9、介绍一下 java 内存模型
(面试官是把内存模型和内存结构的概念搞混了,后来核实了,其实是要问内存结构)
每个线程私有一个虚拟机栈,程序计数器
还有本地方法栈
还有堆区,方法区
10、GC 算法
复制-清除
标记-清除
分代-清除
然后将 minor GC ,major GC 的过程讲了一下(新生代的 Eden区 s1,s2区,老年代是经过新生代多次 GC 放入,或者是触发了担保机制,或者是一开始申请的就是很大的对象)
11、OOM 怎么排查
(这一块儿的内容没看到,但是我在实习的时候遇到过内存泄露)
实习公司使用 ThreadLocal 导致内存泄露;处理方案
12、TCP UDP 区别
这个老问题了,几乎每个面试官都会问
13、http和 https 的区别
讲了一下区别,和https 加密流程
14、还有什么区别?
(这我还真就不知道了)
15、你了解哪些加密算法
MD5 ,非对称加密,(还有哪些我就不知道了)
16、数据库三范式
1-3 NF 分别表示什么
17、面向对象编程的注意点
多用组合,少用继承(MVC 架构经典方式)
开放扩展,关闭修改
(我记得高软课上上过好多,但是我只记得这些)
18、设计模式有哪些
我说了几个常用的,结果面试官是让我把 23 个全部说出来,这我哪儿记得
OPPO 后端开发 一、二、HR 面面经 (已 OC)相关推荐
- 纯干货!Java后端开发十二条经验分享!
前言 本文是博主从事后端开发以来,对公司.个人项目的经验总结,包含代码编写.功能推荐.第三方库使用及优雅配置等,希望大家看到都能有所收获 一. 优雅的进行线程池异常处理 在Java开发中,线程池的使用 ...
- OPPO后端开发面试经历
约的下午,过去发现好多人,等了一会.总体来说过程体验还是不错,特别是面试官很好. 面试过程主要如下: 面试官:今天人比较多,我们在这开始吧,先自我介绍一下. 我:... 面试官边听边看我的简历. 面试 ...
- Flask后端开发(二) - Flask的练习(入门)
建议食用官方文档:Welcome to Flask - Flask Documentation (2.1.x)https://flask.palletsprojects.com/ 前言:避免文章篇幅过 ...
- 2023-01-05 长亭科技 Go 后端开发实习生二面
由于面试官前几天
- 京东后端开发实习一二面面经(已offer)
*号表示没答上 一面(1h) 1.聊一聊你在学校的实验班主要干什么 2.拼写检查项目如何实现,一些细节(实现.部署) 3.在华为的项目为什么要用mongodb,数据量的量级 4.项目中redis的作用 ...
- java后端语言,后端开发语言哪一种比较好?后端开发语言比较
网络开发语言是一种编程语言,用于支持并维系一个网站的建设,使用一个高级合理的编辑语言,能够帮助您更快的进行网络建设开发.然而,在网络建设时,网络建设开发师常常为了选择哪一种网络开发语言而发愁,下面小编 ...
- 字节跳动后端开发一面、二面、三面
一面(大概50min,忘记录音了) 基础知识有点多记得不太清楚了. 介绍一下你的第一个内存池项目. 面试官说他也知道这个内存池,这块儿谈的比较久. 项目是自己完成的吗?为什么要做这个项目? 这个内存池 ...
- 2021.4.7 美团买菜后端开发实习生(二面)(含总结)(已oc)
title: 2021.4.7 美团买菜后端开发实习生(二面) tags: 面经 2021.4.7 美团买菜后端开发实习生(二面) 自我介绍 Java学习时长 final关键字的作用(见下文) 注解有 ...
- “安居客“住房系统-基于Python-Django前后端分离开发(二)——基于RESTful架构的数据接口配置以及Redis高速缓存
"安居客"住房系统-基于Python-Django前后端分离开发(二) 基于Django-Rest-Framework创建接口数据(二) 文章目录 "安居客"住 ...
最新文章
- AcWing 2983. 玩具 / POJ 2318.toys(计算几何基础、二分、判断点和直线的位置关系)
- 最好用浏览器_魔镜魔镜,请你告诉我谁是Mac上最好用的浏览器?--全网最好用的12个功能让你玩转Safari...
- QC中设置组权限-隐藏筛选器
- NTU 课程笔记: CV6422 regression
- 云原生生态周报 Vol. 8 | Gartner 发布云原生趋势
- boost::core模块实现交换std::bitset
- 将SQL Server查询导出本地excel(mail发送)
- c++11之std::move()
- 图论——最小生成树:Prim算法及优化、Kruskal算法,及时间复杂度比较
- GRE阅读高频机经原文及题目之能源消费(逻辑)
- SM2椭圆曲线公钥加密算法
- Interview:职场面试技巧之STAR面试法则
- Swift 5.1 温故而知新笔记系列之第七天
- 深圳一普通中学老师工资单曝光,秒杀程序员
- yolov4-论文解析(3)
- 数字电路课程设计 密码锁
- Flutter时间转换工具类
- [CodeForces 332B]Maximum Absurdity[DP]
- 利用Win10自带的计算器把十六进制,八进制转换成十进制
- 五千字长文为你揭秘滴滴共享出行派单算法原理(干货)
热门文章
- 用 VR 玩《魔兽世界》是一种怎样的体验?
- 如何学习C4D?非常详细的C4D学习攻略!按照这个步骤你一定成为影视后期大神
- linux arm关闭光栅,基于Linux的光栅检测系统的软件设计与实现.pdf
- 点阵字python_Python点阵字玩转动态歌词
- 2022年最新NFT 开发平台解决方案
- cat5和cat5e的区别_具有功能以及CAT5与CAT6的CAT5电缆标准是什么?
- 10月1日 - 10月7日,国庆
- 固态硬盘能提高服务器内存吗,内存涨疯了!固态硬盘能替代内存吗?
- DDR3详解(以Micron MT41J128M8 1Gb DDR3 SDRAM为例)
- MTK平台基于EV1527的无线接收和发射程序