《剑指offer》目录(Java篇)(持续更新中……)

说明:

随着写的题目多了,整个博客显得有些杂乱无章,学着其他博主,建立一个目录,方便自己快速能找到相应的题目。再者,可以从这次整理中,将以前的只用C++代码写过的题目增添Java版,也是相当于再梳理一次全书。工程量还是挺大的,继续前行,哈哈。参考ryderchan的博客,将所有题目分别按照类别和《剑指offer》(第二版)题目对应的页码进行整理。

有一段时间没更新了,感觉又忘了好多,前一阵有点着急忙其他的,以后每天更新一题,希望完成任务。加油!!!

19/05/16更,将每一部分增加一个总结很有必要,刷题也是一个类别一个类别的刷,不过好像忘得有点快,哈哈,加油!
19/05/21更,发现还是有些题目刷过又忘了,之后结合LeetCode,然后按照tag来刷,第一个招聘的Vivo已经开始了,说明时间不多了,加油!!
19/05/25更,刚拿到新的一本左神的代码书籍《Coding Interview Guide》,看里面的归类方式很好,所有这里原来的顺序也更改一下,并从左神的书中找出《剑指offer》中题的最优解,或者更新一些题在这里,华为海思也开始招聘了,加油呀~
19/06/13更,目前投了华为海思和招行实习,感觉复习的进度还是有点慢,加油!
19/06/18更,准备试一下二十九所的提前批,还有一个月,抓紧时间!

=============================================================
19/08/21更,三年级了。

按照类别顺序分析

设计模式类

页码 题目
32 2.实现Singleton模式

栈队列

页码 题目
68 总结:栈和队列
68 9.用两个栈实现队列(1)
165 30.包含min函数的栈(1)
168 31.栈的压入弹出序列(1)
288 59.1.滑动窗口的最大值(1)
292 59.2.队列的最大值(1)

链表问题

页码 题目
56 总结:链表相关
58 6.从尾到头打印链表(2)
119 18.1.删除链表的节点(2)
122 18.2.删除链表中重复的节点(2)
P_77 删除无序单链表中值重复出现的节点
134 22.链表中倒数第K个节点(2)
139 23.链表中环的入口(2)
142 24.反转链表(2)
145 25.合并两个排序的链表(2)
187 35.复杂链表的复制(2)
253 52.两个链表的第一个公共节点(2)
300 62.圆圈中最后剩下的数字(1)

二叉树问题

页码 题目
60 总结:二叉树的遍历(1)
62 7.重建二叉树(1)
65 8.二叉树的下一个节点
148 26.树的子结构(1)
151 27.二叉树的镜像(1)
159 28.对称的二叉树(1)
171 32.从上到下打印二叉树(1)
174
176 32.3.之字形打印二叉树(1)
179 33.二叉搜索树的后序遍历(1)
182 34.二叉树中和为某一值的路径(1)
191 36.二叉搜索树与双向链表
194 37.序列化二叉树(1)
269 54.二叉搜索树的第K大节点
271 55.二叉树的深度(1)
273 55.2.平衡二叉树
326 68.树中两个节点的最低公共祖先(1)

递归和动态规划

页码 题目
74 10.斐波那契数列(1)
94 总结:动态规划
96 14.剪绳子(1)
218 42.连续子数组的最大和(1)
231 46.把数字翻译成字符串(1)
233 47.礼物的最大值(1)
236 48.最长不含重复字符的子字符串(1)
304 63.股票的最大利润(1)

字符串问题

页码 题目
51 总结:字符串经典算法
51 5.替换空格( 1 )
124 19.正则表达式匹配
127 20.表示数值的字符串
236 48.最长不含重复字符的子字符串(1)
284 58.1.翻转字符串(翻转单词顺序)(2)
286 58.2.左旋转字符串(2)
318 67.把字符串转换成整数(1)

大数据和空间限制(新增)

页码 题目
P331 认识布隆过滤器
P335 只用2GB内存在20亿个整数中找到出现次数最多的数
P336 40亿个非负整数中找到未出现的数
P337 找到100亿个URL中重复的URL及搜索词汇的Top K问题
P338 40亿个非负整数中找到出现两次的数和所有数的中位数
P339 一致性哈希算法的基本原理

位运算

页码 题目
99
100 15.二进制中1的个数
277 56.数组中只出现一次的两个数字(1)
278 56.2.数组中唯一出现一次的数字(1)
279
310
312 66.构建乘积数组

数组和矩阵问题(新增)

堆结构

总结:堆结构

哈希

页码 题目
39 3.数组中重复的数
243 50.第一个只出现一次的字符(2)
247 50.2.流中第一个出现一次的字符(1)

查找

页码 题目
44 4.二维数组中的查找(2)
79 总结:查找算法(1)
82 11.旋转数组的最小数字(2)
263 53.数字在排序数组中出现的次数(2)
266 53.2.0~n中缺失的数字(2)
267 53.3.数组中数值和下标相等的元素(2)

排序

页码 题目
79 总结:各种排序算法(1)
79
129 21.使数组中奇数位于偶数前面(2)
205 39.数组中出现次数超过一半的数字(2)
209 40.最小的k个数(2)
214 41.数据流中的中位数
227 45.把数组排序成最小的数
249 51.数组中的逆序对(2)

其他类

页码 题目
74 10.斐波那契数列
307 64.求1+2+…+n

按照页码顺序分析

页码 题目
25 1.赋值运算符函数
51 5.替换空格
298 61.扑克牌中的顺子
307 64.求1+2+…+n
280 57.1 和为S的两个数字(1)
282 57.2 和为S的连续整数序列(1)

你可能感兴趣的:(剑指offer,目录,java)