三面头条,靠P9级算法大牛分享的两本算法pdf书籍,轻松拿到offer

简介: 头条一面(Java+项目)1.倒排索引2.讲讲redis里面的哈希表?3.happen-before的规则?4.volatile修饰符,synchronize锁5.java单例模式的实现,懒汉、饿汉?6.进程与线程的区别,多进程和多线程的区别?7.HashMap原理,为什么用红黑树,红黑树的特点?8.快排时间空间复杂度,最好最坏的情况,优化方案?

头条一面(Java+项目)

1.倒排索引

2.讲讲redis里面的哈希表?

3.happen-before的规则?

4.volatile修饰符,synchronize锁

5.java单例模式的实现,懒汉、饿汉?

6.进程与线程的区别,多进程和多线程的区别?

7.HashMap原理,为什么用红黑树,红黑树的特点?

8.快排时间空间复杂度,最好最坏的情况,优化方案?

9.TCP的拥塞控制,具体过程是怎么样的?UDP有拥塞控制吗?如何解决?

10.讲讲了解的垃圾回收算法和回收器,什么时候执行STOP THE WORLD?

11.了解Go语言吗?

头条二面(大数据+项目)

1.Kylin的项目架构

2.Paxos和ZAB协议

3.CAP理论,分区容错性的意义

4.大表Join小表优化,如何处理数据倾斜?

  1. 讲一下最大堆和最小堆

6.HDFS的读取、写入,容错处理。(源码)

7.MapReduce的过程(第一版和第二版的)

8.MR shuffle,Spark shuffle。

9.namenode HA,脑裂,Yarn的调度机制。

10. Hive的内部表和外部表区别、数仓建模模型、数仓分层、雪花模型和星型模型。

11.了解ClickHouse吗?它与Kylin的区别?

头条三面(算法+场景题)

1.LRU算法实现(伪代码)

2.链表倒数第K个数(讲思路)

3.一堆螺丝和螺母用最短时间匹配(代码实现)

4.求每天浏览页面的新用户(Hive QL实现)

5.求抖音小视频每日点击量最高的10个(Hash + 最小堆)

程序员代码面试指南—IT名企算法与数据结构题目最优解

  1. 栈和队列
  2. 链表问题
  3. 二叉树问题
  4. 递归和动态规划
  5. 字符串问题
  6. 大数据和空间限制
  7. 位运算
  8. 数组和矩阵问题
  9. 其他题目

排序及数据结构与算法

一、冒泡排序

二、选择排序

三、插入排序

四、快速排序

五、归并排序

六、希尔排序

七、堆排序

八、基数排序(桶排序)

九、递归

十、链表

十一、栈

十二、队列

十三、二叉树

《程序员代码面试指南—IT名企算法与数据结构题目最优解》及《排序及数据结构与算法》感兴趣的朋友们可以点击此处来获取就可以了!

小结

这次的笔试里总共有5道,我AC了2.5题,第一题90%,第二题90%,第三题70%,不算好,但勉强通过了。去年的这个时候我可是连题目都看不懂的,看得懂的只知道用嘴怎么说,不会用代码实现。通过这段时间的算法训练,总结了如下几点算法笔试经验:

1.平时刷题一定要总结归纳,最好分类。比如关于树的题型,链表的,数组等等,观察它们的解题思路,总结出解题套路。

2.积累工具类算法。什么叫工具类算法?就是你解一道算法题需要用到另一种算法,这个被调用的算法就是解决这道算法题的工具。比如常见的「深度优先遍历」、「广度优先遍历」、「01背包」、「KMP算法」以及常见的选择和排序算法都是经常使用的工具类算法。

3.学会抽象题目。笔试算法题不同于面试算法,不会直白跟你说要使用哪种算法去解答,更多的要自己学会抽象,抛开题目本身,要明白内部讲的是什么,别被题目的糖衣炮弹迷惑了。只有把题目抽象成最原始的算法你才能更好地使用工具类算法进行解答。

如何准备头条面试?

头条面试和其他大厂可能大同小异,但就是这个小异才是关键地方,能异于其他人的地方。可以从如下几个方面去做准备:

1.特意准备几个面试题源码。像我在回答一些中规中矩面试题的时候,都会从源码角度出发。比如常见的HashMap等集合类,多线程的各种锁以及大数据框架的部分源码。

2.特意准备项目难点。面一些大厂的时候避免不了被问到项目难点,不可能用普通Bug含糊过去啊。这边可以从项目用到的技术栈出发,去寻找技术栈在项目中会存在的难点,然后套进自己的项目,找个自己能懂,最好能全懂的。

3.针对性去了解公司的技术栈使用情况。比如头条使用Go,众人皆知,那为什么我不突击学习一下呢?比如从业内人士得知头条最早使用的是Kylin框架,后面慢慢转为ClickHouse,那我必须了解一下两者的不同啊,而且可以结合头条的业务场景。

《程序员代码面试指南—IT名企算法与数据结构题目最优解》及《排序及数据结构与算法》感兴趣的朋友们可以点击此处来获取就可以了!

相关文章
|
7月前
|
设计模式 算法 Java
京东Java高开岗三面算法+数据库+设计模式,复习1个月成功拿offer
京东高级java现场三面,包含:算法、数据库、设计模式、java高级等,尾部有最全BAT高级java面试题目和答案福利,想要的就快来领走吧~(领取方式见文末)
|
7月前
|
NoSQL 算法 Java
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
|
7月前
|
NoSQL Java 关系型数据库
闭关修炼21天,“啃完”283页pdf,我终于4面拿下字节跳动offer
今年的开端有些特殊,疫情的缘故对我们的生活造成了很大的影响,这对于一名求职者来说,更是添上了一堵“难墙”,尽管如此,但我们也不能够错失金三银四的机会,该抓住的就要抓住。现在很多互联网公司都已经采取线上面试的方式,所以提前做好准备,投简历、顺利面试,定会拿下心仪的offer,而我也总算取得自己想要的成功,字节跳动成功4面通关。
|
7月前
|
缓存 算法 NoSQL
凭借一份“面试真经pdf”,我四面字节跳动,拿下1-2级offer
近两年是中国互联网企业组织架构升级的大年,阿里、腾讯、小米、快手等知名互联网企业都进行了相应调整。2020年3月12日,字节跳动成立八周年之际,宣布组织全面升级,而这一消息也彻底激起了我对字节跳动的期待。
|
7月前
|
人工智能 算法 程序员
这本“算法宝典”讲得透彻,完全掌握后,我竟拿到字节跳动offer
字节跳动,相信大家都已经对这家公司很熟悉了,尤其是近几年来,对它的认识也在不断刷新,它惊人的发展速度确实让行业内人刮目相看,如今很多年轻人也想要挤进字节跳动,它越来越火热,自然也就越来越难进了!
太可惜了,四面字节跳动,我的offer竟被一道“算法题”给拦截了
算法,在行业里越来越重要,一线互联网公司也非常注重算法,所以在面试时基本上都有涉及到。字节跳动是出了名的爱问算法题,几乎每一面都要问到算法。实际上,现在很多公司都会问算法,尤其是对于应届生来说,要求更高,所以想要进大厂,搞定算法是很重要的。
|
7月前
|
安全 NoSQL Java
从安卓转到Java开发,我吃透了这份pdf,终于4面拿下美团offer
先说说个人情况吧,坐标广州,16年从一所普通二本大学毕业,毕业后在一家小公司干android开发,年薪在15w左右。转Java的契机是认识到了一个朋友,做Java后台的,经常跟他聊相关的内容,经过慎重考虑及个人的发展规划,所以就决定转型了。
|
7月前
|
消息中间件 算法 Java
三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
年末离职,年初为面试也筹备挺长一段时间,找了不少复习资料,刷了很多题在网上投了很多简历最终面试了有赞,还有幸拿到offer!
|
7月前
|
SQL 算法 NoSQL
三面头条,靠P9级算法大牛分享的两本算法pdf书籍,轻松拿到offer
头条一面(Java+项目) 1.倒排索引 2.讲讲redis里面的哈希表? 3.happen-before的规则? 4.volatile修饰符,synchronize锁 5.java单例模式的实现,懒汉、饿汉? 6.进程与线程的区别,多进程和多线程的区别?
|
6天前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
124 80