JAVA后端架构

疫情下的互联网寒冬,致敬那些一直在投简跳槽面试的码农们

2021-01-19  本文已影响0人  AI乔治

将近新年,又是一年一度的互联网寒冬,伴随着疫情的原因,是的互联网寒冬比往年更加的寒冷。在20年底的时候,随着公司投资人的撤资,我也体验了一把别人口中所说的寒冬。在今年11月份,自己也因为很多原因,不得不以在这寒冬的季节投简面试。在这几个月的辛苦面试历程中,也体验了寒冬的残酷。但阳光总在风雨后,坚持了几个月,也收到了心仪的offer,虽说不是很顺利,但也知道了自己的不足以及往后的努力方向。下面是我这几个月以来面试的几家面试题算是比较典型的工厂面试题。希望可以帮助到还在寒冬辛苦投简面试的码农们。


携程面试

提示:使用排序(排序)
排序的时间复杂度
只记得这些了
许愿能过 ​


字节跳动(头条三面)

一面:

自我介绍,做的项目的介绍,项目架构设计,
Dubbo原理介绍,netty原理介绍
hashMap原理,是线程安全的吗?为什么不安全。
redis缓存过期策略,准备同步,哨兵机制和集群的区别
算法题:
给定一个经过编码的字符串,返回它解码后的字符串。

编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。

你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。

此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。

示例:

s = "3[a]2[bc]", 返回 "aaabcbc".
s = "3[a2[c]]", 返回 "accaccacc".
s = "2[abc]3[cd]ef", 返回 "abcabccdcdcdef".

二面:

算法:
你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。

给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。

示例 1:

输入: [2,3,2]
输出: 3
解释: 你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他们是相邻的。

示例 2:

输入: [1,2,3,1]
输出: 4
解释: 你可以先偷窃 1 号房屋(金额 = 1),然后偷窃 3 号房屋(金额 = 3)。
偷窃到的最高金额 = 1 + 3 = 4 。

项目,主要做了什么,项目中碰到的问题有哪些,都市怎么解决?你觉得那个项目是最有挑战的

java多线程,线程池的选型,为什么要选这个,底层实现原理

三面:

你最熟悉的项目,做了什么,为什么这么做,怎么体现你项目的价值

让你来推广广告,你会怎么设计?

java基础问了些,JVM内存模型 G1和CMS垃圾回收器

如何中断线程,await和sleep区别

设计一个秒杀系统


上一篇 下一篇

猜你喜欢

热点阅读