剑指Offer+部分经典数据结构及算法题目:
1、栈与队列
- 实现一个栈:https://blog.csdn.net/zangdaiyang1991/article/details/88628512
- 实现一个队列:https://blog.csdn.net/zangdaiyang1991/article/details/88628826
- 构造一个栈,取最大最小、pop()、push()都是o(1):https://blog.csdn.net/zangdaiyang1991/article/details/88573504
- 两个栈实现一个队列:https://blog.csdn.net/zangdaiyang1991/article/details/88624667
- 两个队列实现一个栈:https://blog.csdn.net/zangdaiyang1991/article/details/88626639
- 栈的入栈、出栈序列:https://blog.csdn.net/zangdaiyang1991/article/details/88635917
2、链表的基本操作
- 链表反转:https://blog.csdn.net/zangdaiyang1991/article/details/88573910
- 按k步反转链表:https://blog.csdn.net/zangdaiyang1991/article/details/88629819
- 取链表的倒数k个数&中间节点:https://blog.csdn.net/zangdaiyang1991/article/details/88584807
- 两个有序链表合成一个有序链表:https://blog.csdn.net/zangdaiyang1991/article/details/88575490
- 删除重复节点:https://blog.csdn.net/zangdaiyang1991/article/details/88616832
- 取两个链表的第一个交叉节点:https://blog.csdn.net/zangdaiyang1991/article/details/88586439
- 取链表中环的第一个节点:https://blog.csdn.net/zangdaiyang1991/article/details/88596182
- 约瑟夫环:https://blog.csdn.net/zangdaiyang1991/article/details/88619512
- 单链表冒泡排序:https://blog.csdn.net/zangdaiyang1991/article/details/88721214
- 单链表快速排序:https://blog.csdn.net/zangdaiyang1991/article/details/88728860
- 双向链表快速排序:https://blog.csdn.net/zangdaiyang1991/article/details/88729244
- o(1)删除链表节点:https://blog.csdn.net/zangdaiyang1991/article/details/88600193
- 链表倒序打印:https://blog.csdn.net/zangdaiyang1991/article/details/88580322
- 复杂链表的复制:https://blog.csdn.net/zangdaiyang1991/article/details/88617649
3、数组
- 无序数组的中位数(快排、最小堆):https://blog.csdn.net/zangdaiyang1991/article/details/88641830
- 冒泡、快排、归并排序:https://blog.csdn.net/zangdaiyang1991/article/details/88645292
- 全排列:https://blog.csdn.net/zangdaiyang1991/article/details/88657331
- 数组中出现次数超过一半的数字:https://blog.csdn.net/zangdaiyang1991/article/details/88619938
- 数字在排序数组中出现的次数:https://blog.csdn.net/zangdaiyang1991/article/details/88716570
- 数组中只出现一次的数字:https://blog.csdn.net/zangdaiyang1991/article/details/88770127
- 连续子数组的最大和:https://blog.csdn.net/zangdaiyang1991/article/details/88770534
- 把数组排成最小的数:https://blog.csdn.net/zangdaiyang1991/article/details/88753512
- 数组中的逆序对:https://blog.csdn.net/zangdaiyang1991/article/details/88779420
- 二维数组中的查找:https://blog.csdn.net/zangdaiyang1991/article/details/88975886
4、字符串
- 反转字符串或句子:https://blog.csdn.net/zangdaiyang1991/article/details/88680226
- 字符串左旋转:https://blog.csdn.net/zangdaiyang1991/article/details/88692465
- 最小子串覆盖:https://blog.csdn.net/zangdaiyang1991/article/details/88695435
- 替换空格:https://blog.csdn.net/zangdaiyang1991/article/details/88979760
5、树
- 二叉树层次遍历:https://blog.csdn.net/zangdaiyang1991/article/details/88649319
- 二叉树前中后递归、非递归遍历:https://blog.csdn.net/zangdaiyang1991/article/details/88665770
- 二叉树打印成多行:https://blog.csdn.net/zangdaiyang1991/article/details/88683328
- 之字形打印二叉树:https://blog.csdn.net/zangdaiyang1991/article/details/88684664
- 二叉树深度&是否平衡:https://blog.csdn.net/zangdaiyang1991/article/details/88657944
- 重组二叉树:https://blog.csdn.net/zangdaiyang1991/article/details/88653174
- bst转双向链表:https://blog.csdn.net/zangdaiyang1991/article/details/88759713
- 取最大的k个数(topK)(最小堆):https://blog.csdn.net/zangdaiyang1991/article/details/88652160
6、其他
- 斐波那契数列、青蛙跳台阶、兔子数量问题(递归、非递归):https://blog.csdn.net/zangdaiyang1991/article/details/88662602
- 概率问题 p 1-p:https://blog.csdn.net/zangdaiyang1991/article/details/88768967
- 丑数:https://blog.csdn.net/zangdaiyang1991/article/details/88783937
- 水仙花数:https://blog.csdn.net/zangdaiyang1991/article/details/88809380
- 折半查找:https://blog.csdn.net/zangdaiyang1991/article/details/88880718
- 不用加减乘除做加法:https://blog.csdn.net/zangdaiyang1991/article/details/88937986
剑指Offer题目:
取自牛客网:https://www.nowcoder.com/ta/coding-interviews
相关阅读:
【剑指Offer学习】:https://blog.csdn.net/DERRANTCM/article/details/46887821