1、开张
《剑指 Offer》是全球程序员的经典面试秘籍!
如果你不知道在哪里找,那么 leetcode 将会是最简单,同时也是最方便的途径(leetcode 打钱)。 直接放链接,
剑指 Offer(第 2 版)力扣 (LeetCode)
这里需要说明的一点是,【剑指 Offer 】进行过改版,不过不需要在意这些过程,先掌握刷题的关键才是重点!
2、一些说明
首先需要弄清几个点,方便快速刷题和复盘,进而达到最大效率。
- 为了方便大家刷题,我会尽力每日一更,同时在多个平台更新,欢迎大家转发打卡,如果有什么错误或者不同的意见,欢迎评论区指正。
- 由于我是 C++ 方向的秋招,所以编程的语言是 C++。
- 你之前可能刷过【剑指 Offer】,但是这并不代表就结束了,【剑指 Offer】更像是考试范围,所以【不一定】会出完全一样的原题,但是一定会出同类型的题。
- 另外还要强调的一点是,【手撕代码】不是让你打开 leetcode 或者编译器进行代码编写,自动补全【一般情况下】是不会让你用的,所以一定要达到白板编写的程度,即给你一个记事本或者白纸,可以默写代码!
如果你还有别的疑问,可以直接留言,我会帮助你解惑。
3、剑指 Offer
除了原题,还有一些相似题或者同类型的题,也会讲解或者说明。
几个表格指标的意思分别是:
- 题号:可以通过搜索直接找到题目的指标;
- 题目: 可以大概判断知识点的指标;
- 题解:可以直接找到我的题解的指标;
- 通过率:可以判断同行竞争者对该题目难度看法的指标;
- 难度:可以显示出理论上题目设计初衷的指标;
以下是正文,待更新。。。
题号 | 题目 | 题解 | 通过率 | 难度 |
---|
*************************** 1st Week | | | | | 剑指 Offer 03 | 数组中重复的数字 | C++版本题解 | 67.0% | 简单 | 剑指 Offer 04 | 二维数组中的查找 | C++版本题解 | 40.9% | 简单 | 剑指 Offer 05 | 替换空格 | C++版本题解 | 76.8% | 简单 | 剑指 Offer 06 | 从尾到头打印链表 | C++版本题解 | 75.8% | 简单 | 剑指 Offer 07 | 重建二叉树 | C++版本题解 | 67.8% | 中等 | 剑指 Offer 09 | 用两个栈实现队列 | C++版本题解 | 71.4% | 简单 | 剑指 Offer 10- I | 斐波那契数列 | C++版本题解 | 33.0% | 简单 | 剑指 Offer 10- II | 青蛙跳台阶问题 | C++版本题解 | 41.4% | 简单 | 剑指 Offer 11 | 旋转数组的最小数字 | C++版本题解 | 47.3% | 简单 | 剑指 Offer 12 | 矩阵中的路径 | C++版本题解 | 43.7% | 中等 | *************************** 2nd Week | | | | | 剑指 Offer 13 | 机器人的运动范围 | C++版本题解 | 48.6% | 中等 | 剑指 Offer 14- I | 剪绳子 | C++版本题解 | 54.3% | 中等 | 剑指 Offer 14- II | 剪绳子 II | C++版本题解 | 30.4% | 中等 | 剑指 Offer 15 | 二进制中1的个数 | C++版本题解 | 73.6% | 简单 | 剑指 Offer 16 | 数值的整数次方 | C++版本题解 | 32.6% | 中等 | 剑指 Offer 17 | 打印从1到最大的n位数 | C++版本题解 | 78.5% | 简单 | 剑指 Offer 18 | 删除链表的节点 | C++版本题解 | 58.8% | 简单 | 剑指 Offer 19 | 正则表达式匹配 | C++版本题解 | 34.5% | 困难 | 剑指 Offer 20 | 表示数值的字符串 | C++版本题解 | 19.9% | 中等 | 剑指 Offer 21 | 调整数组顺序使奇数位于偶数前面 | C++版本题解 | 63.9% | 简单 | 剑指 Offer 22 | 链表中倒数第k个节点 | C++版本题解 | 78.8% | 简单 | *************************** 3rd Week | | | | | 剑指 Offer 24 | 反转链表 | C++版本题解 | 75.3% | 简单 | 剑指 Offer 25 | 合并两个排序的链表 | C++版本题解 | 74.1% | 简单 | 剑指 Offer 26 | 树的子结构 | C++版本题解 | 46.3% | 中等 | 剑指 Offer 27 | 二叉树的镜像 | C++版本题解 | 78.6% | 简单 | 剑指 Offer 28 | 对称的二叉树 | C++版本题解 | 57.3% | 简单 | 剑指 Offer 29 | 顺时针打印矩阵 | C++版本题解 | 46.0% | 简单 | 剑指 Offer 30 | 包含min函数的栈 | C++版本题解 | 57.7% | 简单 | 剑指 Offer 31 | 栈的压入、弹出序列 | C++版本题解 | 57.6% | 中等 | 剑指 Offer 32 - I | 从上到下打印二叉树 | C++版本题解 | 64.0% | 中等 | 剑指 Offer 32 - II | 从上到下打印二叉树 II | C++版本题解 | 68.6% | 简单 | 剑指 Offer 32 - III | 从上到下打印二叉树 III | C++版本题解 | 58.6% | 中等 | *************************** 4th Week | | | | | 剑指 Offer 33 | 二叉搜索树的后序遍历序列 | C++版本题解 | 51.0% | 中等 | 剑指 Offer 34 | 二叉树中和为某一值的路径 | C++版本题解 | 55.9% | 中等 | 剑指 Offer 35 | 复杂链表的复制 | C++版本题解 | 70.5% | 中等 | 剑指 Offer 36 | 二叉搜索树与双向链表 | C++版本题解 | 62.4% | 中等 | 剑指 Offer 37 | 序列化二叉树 | C++版本题解 | 51.4% | 困难 | 剑指 Offer 38 | 字符串的排列 | C++版本题解 | 53.3% | 中等 | 剑指 Offer 39 | 数组中出现次数超过一半的数字 | C++版本题解 | 67.5% | 简单 | 剑指 Offer 40 | 最小的k个数 | C++版本题解 | 58.2% | 简单 | 剑指 Offer 41 | 数据流中的中位数 | C++版本题解 | 55.1% | 困难 | 剑指 Offer 42 | 连续子数组的最大和 | C++版本题解 | 59.5% | 简单 | 剑指 Offer 43 | 1~n整数中1出现的次数 | C++版本题解 | 44.7% | 中等 | *************************** 5th Week | | | | | 剑指 Offer 44 | 数字序列中某一位的数字 | C++版本题解 | 37.8% | 中等 | 剑指 Offer 45 | 把数组排成最小的数 | C++版本题解 | 55.5% | 中等 | 剑指 Offer 46 | 把数字翻译成字符串 | C++版本题解 | 54.3% | 中等 | 剑指 Offer 47 | 礼物的最大价值 | C++版本题解 | 67.6% | 中等 | 剑指 Offer 48 | 最长不含重复字符的子字符串 | C++版本题解 | 45.1% | 中等 | 剑指 Offer 49 | 丑数 | C++版本题解 | 63.2% | 中等 | 剑指 Offer 50 | 第一个只出现一次的字符 | C++版本题解 | 59.7% | 简单 | 剑指 Offer 51 | 数组中的逆序对 | C++版本题解 | 45.3% | 困难 | 剑指 Offer 52 | 两个链表的第一个公共节点 | C++版本题解 | 63.7% | 简单 | 剑指 Offer 56 - I | 数组中数字出现的次数 | C++版本题解 | 72.7% | 中等 | 剑指 Offer 56 - II | 数组中数字出现的次数 II | C++版本题解 | 78.8% | 中等 | *************************** 6th Week | | | | | 剑指 Offer 53 - I | 在排序数组中查找数字 I | C++版本题解 | 52.8% | 简单 | 剑指 Offer 53 - II | 0~n-1中缺失的数字 | C++版本题解 | 44.7% | 简单 | 剑指 Offer 54 | 二叉搜索树的第k大节点 | C++版本题解 | 72.9% | 简单 | 剑指 Offer 55 - I | 二叉树的深度 | C++版本题解 | 78.5% | 简单 | 剑指 Offer 55 - II | 平衡二叉树 | C++版本题解 | 57.9% | 简单 | 剑指 Offer 56 - I | 数组中数字出现的次数 | C++版本题解 | 72.7% | 中等 | 剑指 Offer 56 - II | 数组中数字出现的次数 II | C++版本题解 | 78.8% | 中等 | 剑指 Offer 57 | 和为s的两个数字 | C++版本题解 | 65.3% | 简单 | 剑指 Offer 57 - II | 和为s的连续正数序列 | C++版本题解 | 68.5% | 简单 | 剑指 Offer 58 - I | 翻转单词顺序 | C++版本题解 | 41.8% | 简单 | 剑指 Offer 58 - II | 左旋转字符串 | C++版本题解 | 84.6% | 简单 | *************************** 7th Week | | | | | 剑指 Offer 59 - I | 滑动窗口的最大值 | C++版本题解 | 43.8% | 简单 | 剑指 Offer 59 - II | 队列的最大值 | C++版本题解 | 48.5% | 中等 | 剑指 Offer 60 | n个骰子的点数 | C++版本题解 | 53.2% | 简单 | 剑指 Offer 61 | 扑克牌中的顺子 | C++版本题解 | 43.6% | 简单 | 剑指 Offer 62 | 圆圈中最后剩下的数字 | C++版本题解 | 61.2% | 简单 | 剑指 Offer 63 | 股票的最大利润 | C++版本题解 | 63.4% | 中等 | 剑指 Offer 64 | 求1+2+…+n | C++版本题解 | 85.9% | 中等 | 剑指 Offer 65 | 不用加减乘除做加法 | C++版本题解 | 55.8% | 简单 | 剑指 Offer 66 | 构建乘积数组 | C++版本题解 | 57.6% | 简单 | 剑指 Offer 67 | 把字符串转换成整数 | C++版本题解 | 27.0% | 中等 | 剑指 Offer 68 - I | 二叉搜索树的最近公共祖先 | C++版本题解 | 67.8% | 简单 | 剑指 Offer 68 - II | 二叉树的最近公共祖先 | C++版本题解 | 68.0% | 简单 |
4、题库储备量
这是个老生常谈的话题,很多人以为只要刷了剑指 Offer 就可以达到面试题的储备量了,这显然是不对的,当你可以很轻松的完成剑指 Offer 之后,需要做一些其他的题来补充和提高,这里推荐 【👨?💻 LeetCode 精选 TOP 面试题】。
你会觉得难这是很正常的,但是如果你能刷好,这必然是一个优势,加分项拉满。
—————————————————————————————————————
本文由 leetcode、牛客、公众哈哦、知乎共同支持! https://leetcode-cn.com/u/tefuirnever/ https://blog.nowcoder.net/wsguanxl https://mp.weixin.qq.com/s/bDwxwQfZytIx4mAn8eK20Q
https://www.zhihu.com/people/tefuirnever_-.-
|