面试刷题11-21

一面:

自我介绍

项目问题

volatile语意

保证内存可见性,禁止指令重排

线程同步方法

Lock,Synchronized

数据库索引结构,为什么快

减少IO次数

synchronize关键字

同步代码块和同步方法

jvm内存模型,有哪几块,程序计数器是干嘛的

记录程序运行状态

二面:

有什么设计模式

单例模式,工厂模式

装饰者模式讲讲

Hashmap内存结构,扩容问题

数组加链表

创建线程的几种方式

四种方式

Runnable和callable区别

前者没有返回值,后者有返回值,有异常

线程池参数, 队列,核心线程池和最大线程池关系

sql注入,

哈希一致性

分布式缓存


 

一面

1.讲讲Java反射机制,平时编码有没有用过反射

 

2.spring怎么用反射,IOC原理,讲注入方式,扯到jdbc获取数据库驱动反射相关知识

 

3.从反射扯到了类加载过程,类加载时机

 

4.说说设计模式,说下装饰器模式,在什么场景下见到过,或者用过装饰器模式,用java的inputstream,fileinputstream,bufferedInputstream简单模拟一下

 

5.说说mysql,怎么设计表,设计表一定要遵循三范式吗,有没有哪种情况下遵循了三范式反而不好的情况

6.说说mysql引擎,哪种情况下用什么引擎

 

7.说说事务的隔离级别,给了一个什么日志的场景,问用什么存储引擎和什么隔离级别,卒

 

8.jdk源码看了没,看了什么源码,答string,string的底层实现是什么,说说equals方法,跟hashcode有什么区别,怎么获取有一个字符串“a”,怎么获取它的地址,说了System.identityHashcode他说不是,没听懂,后来又说什么操作系统啥的,没听懂,就过了

 

9.说说string.itern方法

 

 

10.写代码,他觉得我太菜了,找了一个最简单的判断回文数,以为要凉了,但还是给了二面

 

11.又想起来一点,问数据库索引的,有哪些索引,问索引的数据结构,为什么用b+数,索引什么情况下会失效,哪些字段适合建索引

 

12.数据库的外键用没用过

 

二面

1.项目,扯了些有的没的,问mysql的引擎,比较,使用

2.问如何沟通需求,怎么把需求和编码相互转化

3.问设计表的时候有哪些要考虑的因素

4.有一篇英文文章,很长,问怎么设计来统计文章里面的单词,以及单词出现的次数,并且找出出现次数最多的10个单词

 

三面

1.自我介绍

2.家庭情况

3.问成绩,平时爱好,为什么不保研,考研呢

4.问有没有offer

5.平时看啥书,你觉得你前两面答得怎么样

6.还有啥想问的

 

结束了,喜欢招银,希望给个offer吧,面了1个半小时好累

 


 

节跳动效率工程 后台开发实习生 视频面试 面试时间:2019-11-20 17:00:00 时长:1小时13分钟

1.自我介绍 。。。。。。。。

2.像今日头条以及抖音这类APP有什么局限性?

因为纯算法推荐可能会陷入自我的圈子。。。。。。

3.你有没有什么解决办法?

引入社交。。。。。。。。

4.问简历上面的毕设?

刨根问底的那种 。。。。。。。。

5.描述面向对象编程,每种动物发出来的声音是不同的,假设现在有猫和狗两种动物,

设计一个程序,让猫发出“喵”,让狗发出“汪”,没有让写具体代码。

6.TCP 三次握手,四次挥手

(1) 先用自己的语言描述一下“三次握手,四次挥手”                                                                                                                                                                                                                                                                                                                                       

(2) 现在把问题深入下,三次握手,第一次发送的是什么消息?

(3) seq 为啥是x,是随机的吗?还是从0, 1 开始的?

(4) 为什么是三次握手,四次挥手呢?三次挥手行不行?

(5) 挥手时,不通知应用层把程序关掉会怎么样?

7.手撕代码

求不在数组中的最小正整数

{-1, 1, 0, 100, 2, 3, 4}-->5 {5, 4, 3, 2}-->1

(1)描述思路

(2)该方法的时间复杂度

(3)现在以空间复杂度换取时间复杂度优化一下你的代码?

(4)写一下代码

(5)时间复杂度最优的情况是多少?(我的复杂度有点高)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值