【剑指offer】Python、java,C++三种语言同时实现

一、前言

1、关于剑指offer的题,只要是博主发出来的都是经过牛客AC的
2、实现语言多半是python和java以及C++同时实现的,部分是用其中一种语言实现的
3、只是用于交流,毕竟自我感觉整理的很好哎

二、内容查看

序号 题目 考点 知识点
1 二维数组的查找 数组 查找、数组
2 替换空格 字符串 字符串
3 从尾到头打印链表 链表 链表
4 重建二叉树
5 用两个栈实现队列 栈和队列 队列、栈
6 旋转数组的最小数字 查找和排序 查找
7 斐波那锲数列 递归和循环 递归
8 跳台阶 递归和循环 递归
9 变态跳台阶 递归和循环 贪心
10 矩阵覆盖 递归和循环 递归
11 二进制中1的个数 位运算 进制转换、补码反码原码
12 数值的整数次方 代码的完整性 数学
13 调整数组顺序使奇数位于偶数前面 代码的完整性 数组
14 链表中倒数第K个节点 代码的鲁棒性 链表
15 反转链表 代码的鲁棒性 链表
16 合并两个排序的链表 代码的鲁棒性 链表
17 树的子结构 代码的鲁棒性 二叉树
18 二叉树的镜像 面试思考
19 顺时针打印矩阵 画图让抽象形象化 数组
20 包含main函数的栈 举例让抽象具体化
21 栈的压入、弹出序列 举例让抽象具体化
22 从上往下打印二叉树 举例让抽象具体化 队列、树
23 二叉树搜索树的后续遍历序列 举例让抽象具体化 栈、树
24 二叉树中和为某一值的路径 举例让抽象具体化
25 复杂链表的复制 分解让复杂问题简单 链表
26 二叉搜索树与双向链表 分解让复杂问题简单 链表、树
27 字符串的排序 让复杂问题简单化 字符串、动态规划、递归
28 数组中出现次数超过一半的数字 时间效率 数组
29 最小的K个树 时间效率 数组、高级算法
30 连续子数组的最大和 时间效率 数组
31 整数中1出现的次数(从1到n整数中1出现的次数) 时间效率 查找、数学
32 把数组排序最小的数 时间效率 数组
33 丑数 时间空间效率平衡 穷举
34 第一个只出现一次的字符 时间空间效率的平衡 字符串
35 数组中的逆序对 时间空间效率的平衡 数组
36 两个链表的第一个公共节点 时间空间效率的平衡 链表
37 数字在排序数组中出现的次数 知识迁移能力 数组
38 二叉树的深度 知识迁移能力
39 平衡二叉树 知识迁移能力
40 数组中只出现一次的数字 知识迁移能力 数组
41 和为S的连续正数序列 知识迁移能力 穷举
42 和为S的两个数字 知识迁移能力 数字
43 左旋转字符串 知识迁移能力 字符串
44 翻转单词顺序列 知识迁移能力 字符串
45 扑克牌顺子 抽象建模能力 字符串
46 孩子们的游戏(圆圈最后剩下的数) 抽象建模能力 数字、链表
47 求1+2+3…+n 发散思维能力 进制转换
48 不用加减乘除做加法 发散思维能力 进制转换
49 把字符串转换成整数 总和 字符串、进制转换
50 数组中重复的数字 数组 数组
51 构建乘积数组 构建乘积数组 数组
52 正则表达式匹配 字符串 字符串
53 表示数值的字符串 字符串 字符串
54 字符流中第一个不重复的字符 字符串 字符串
55 链表中环的入口节点 链表 链表
56 删除链表中重复的节点 链表 链表
57 二叉树的下一个节点
58 对称的二叉树
59 按之字形顺序打印二叉树 栈、树
60 把二叉树打印成多行 队列、树
61 序列化二叉树 队列、树
62 二叉搜索树的第k个节点 栈、树
63 数据流中的中位数 进制转换
64 滑动窗口的最大值 栈和队列 数组
65 旋转数组中的数字 回溯法
66 机器人的运动范围 回溯法 数组
67 剪绳子 动态规划与贪婪 贪心

三、源码获取

由于时间关系,源码先不抛出链接那,博主还没来得及上传到github中,所以先暂时不上传了,待更新。

四、相关学习

也可以关注博主的微信公众号,后期还会继续分享干活,关于数据结构的学习,也可以参考博主此篇博文

发布了213 篇原创文章 · 获赞 303 · 访问量 49万+

猜你喜欢

转载自blog.csdn.net/Jiajikang_jjk/article/details/100588543