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

本博客详细解析《剑指Offer》题解,涵盖设计模式、链表、二叉树、递归动态规划、字符串、大数据处理、位运算、数组矩阵、堆结构、哈希、查找、排序及其他算法问题。分享个人学习心得,记录从C++到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更,三年级了。

按照类别顺序分析

设计模式类
页码题目
322.实现Singleton模式
栈队列
页码题目
68总结:栈和队列
689.用两个栈实现队列(1)
16530.包含min函数的栈(1)
16831.栈的压入弹出序列(1)
28859.1.滑动窗口的最大值(1)
29259.2.队列的最大值(1)
链表问题
页码题目
56总结:链表相关
586.从尾到头打印链表(2)
11918.1.删除链表的节点(2)
12218.2.删除链表中重复的节点(2)
P_77删除无序单链表中值重复出现的节点
13422.链表中倒数第K个节点(2)
13923.链表中环的入口(2)
14224.反转链表(2)
14525.合并两个排序的链表(2)
18735.复杂链表的复制(2)
25352.两个链表的第一个公共节点(2)
30062.圆圈中最后剩下的数字(1)
二叉树问题
页码题目
60总结:二叉树的遍历(1)
627.重建二叉树(1)
658.二叉树的下一个节点
14826.树的子结构(1)
15127.二叉树的镜像(1)
15928.对称的二叉树(1)
17132.从上到下打印二叉树(1)
174
17632.3.之字形打印二叉树(1)
17933.二叉搜索树的后序遍历(1)
18234.二叉树中和为某一值的路径(1)
19136.二叉搜索树与双向链表
19437.序列化二叉树(1)
26954.二叉搜索树的第K大节点
27155.二叉树的深度(1)
27355.2.平衡二叉树
32668.树中两个节点的最低公共祖先(1)
递归和动态规划
页码题目
7410.斐波那契数列(1)
94总结:动态规划
9614.剪绳子(1)
21842.连续子数组的最大和(1)
23146.把数字翻译成字符串(1)
23347.礼物的最大值(1)
23648.最长不含重复字符的子字符串(1)
30463.股票的最大利润(1)
字符串问题
页码题目
51总结:字符串经典算法
515.替换空格( 1 )
12419.正则表达式匹配
12720.表示数值的字符串
23648.最长不含重复字符的子字符串(1)
28458.1.翻转字符串(翻转单词顺序)(2)
28658.2.左旋转字符串(2)
31867.把字符串转换成整数(1)
大数据和空间限制(新增)
页码题目
P331认识布隆过滤器
P335只用2GB内存在20亿个整数中找到出现次数最多的数
P33640亿个非负整数中找到未出现的数
P337找到100亿个URL中重复的URL及搜索词汇的Top K问题
P33840亿个非负整数中找到出现两次的数和所有数的中位数
P339一致性哈希算法的基本原理
位运算
页码题目
99
10015.二进制中1的个数
27756.数组中只出现一次的两个数字(1)
27856.2.数组中唯一出现一次的数字(1)
279
310
31266.构建乘积数组
数组和矩阵问题(新增)
堆结构
总结:堆结构
哈希
页码题目
393.数组中重复的数
24350.第一个只出现一次的字符(2)
24750.2.流中第一个出现一次的字符(1)
查找
页码题目
444.二维数组中的查找(2)
79总结:查找算法(1)
8211.旋转数组的最小数字(2)
26353.数字在排序数组中出现的次数(2)
26653.2.0~n中缺失的数字(2)
26753.3.数组中数值和下标相等的元素(2)
排序
页码题目
79总结:各种排序算法(1)
79
12921.使数组中奇数位于偶数前面(2)
20539.数组中出现次数超过一半的数字(2)
20940.最小的k个数(2)
21441.数据流中的中位数
22745.把数组排序成最小的数
24951.数组中的逆序对(2)
其他类
页码题目
7410.斐波那契数列
30764.求1+2+…+n

按照页码顺序分析

页码题目
251.赋值运算符函数
515.替换空格
29861.扑克牌中的顺子
30764.求1+2+…+n
28057.1 和为S的两个数字(1)
28257.2 和为S的连续整数序列(1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值