【LeetCode 剑指offer 刷题笔记】汇总(已完成)
前言
不知不觉就结束了自己的秋招之路,虽感觉有些艰辛但是收获很多。找工作那段时间做了很多学习笔记,这是数据结构与算法相关的一部分笔记,这一块除了复习相关教科书,还有就是刷LeetCode和《剑指offer》了。
这段时间稍微空闲些,打算把自己之前在印象笔记上做的笔记迁移到CSDN上,供大家学习交流,自己之前也从网上学习了很多,算是回馈一下技术社区吧~
喜欢本博客的同学欢迎给博主打赏(微信扫描下方赞赏码)或是点赞,给予我更大的动力,谢谢大家的支持♪(・ω・)ノ
将印象笔记保留格式迁移到CSDN的艰辛历程
日期 | 记录 |
---|---|
2018.12.10 | 直接复制笔记到CSDN格式会乱,想到可以复制导出的html源码,但是CSDN解析html源码的功能还没加上去,已经反馈了这个问题,我要再等等这个功能,免得要过多的二次编辑。 |
2018.12.23 | 利用周末时间先写个提纲在这里,后面再补充链接。 |
2019.1.5 | 看了很多相关的帖子,了解到CSDN应该不会再开放html源码编辑的功能,所以不再指望。后来灵机一动,可以先把笔记弄到博客园(支持html源码)上,再博客搬家过来就可以了。就利用周末两天时间把自己的刷题笔记通过html源码发布到了博客园上,格式一模一样,完美~~ 然后申请了博客搬家,等待审核…… |
2019.1.8 | CSDN博客搬家未成功,目前这个功能还有问题。已经反馈了这个问题,等待官方修复中…… |
2019.1.9 | 晚上在看博客的时候,惊喜的发现搬过来54篇(博主在博客园上总共有138篇左右),粗略看了一下,格式基本保留了,不过有些细节还是丢失了,比如高亮、代码背景等等,丑了很多,不管怎样,反馈的问题得到了及时解决,还是要给CSDN点赞的,剩下的文章继续等待中…… |
2019.1.11 | 再来看看搬家的情况,搬过来123篇,还有十几篇没搬过来(带图片的都没有搬过来),晚上有点睡不着正好链接下这篇博客中的目录,链接了搬过来的123篇,余下的看搬不搬过来吧到时候再说,有点晚了,去睡了~~ |
2019.1.13 | 等了几天都没有变化了,看来是移不过来了,把没搬过来的十几篇链接成博客园的地址算了。然后还遇到一个问题就是搬家过来的文章都没有分类,而且不能批量给这123篇文章加类别,只能一个一个加(而且试了一下,进入编辑界面,加了分类,然后格式又乱了。。。)。还遇到一个问题是本来想弄个专栏的,但是不能批量添加未分类的文章,只能一个一个添加,已经反馈了不能批量添加分类的问题,等待官方修复这个问题…… |
总的来说这篇汇总已经完成了,所有笔记均已转成博客文章,并链接到这篇目录文章中了~~不过,由于csdn没有批量添加分类的功能,专栏添加文章只能一个一个添加,目前只收录了这篇汇总文章。
刷题概况
博主刷完了《剑指offer》上的所有题目,大概70道左右,leetcode上总共有800多道题(一直在补充),博主刷了大概150道左右,对于找工作来说,这个题量差不多了,具体题量根据个人情况而定吧。《剑指offer》和LeetCode有很多类似的题,对应关系会在笔记中看到。对于LeetCode,自己之前也遇到过不知道重点刷哪些题的疑惑,后来发现官方整理了一些高频题的专栏——Top Interview Questions,我主要是刷的这三个专栏(有easy、medium、hard三个等级)上的题,上面分类整理了一些质量比较高比较经典的题,刷完很有收获,当然也结合自己的情况额外刷了一些专项练习来强化训练,比如动态规划等等。
推荐资源
- 牛客网《剑指offer》刷题链接
- LeetCode刷题链接
- LeetCode All in One 题目讲解汇总(作者Grandyang刷完了leetcode几乎所有题目,刷了800+,而且笔记整理的十分认真,太牛了~~ 博主在刷leetcode过程中有多次参考Grandyang的博客,在此表示感谢)
- 《剑指offer》,何海涛,电子工业出版社
- 《数据结构》,邓俊辉 ,清华大学出版社
- 《算法导论》 ,Thomas 等,机械工业出版社
- 《算法导论》MIT视频公开课(配套课件见资料)
刷题目录
为了方便自己复习,我是按照类别来整理笔记的,同一题目的不同变形版本也放在一起可供比较(整理成系列)。中文题目为《剑指offer》上的题目,英文为leetcode上的,下面是所有题目(还包括一些整理的相关知识点笔记)的目录,方便大家查找:
(先把目录放在这里,后面在花时间把内容链接上)
熟悉OJ平台
- OJ术语
- 如何处理输入问题
- OJ编程实例(cnblogs)
数组:
- 1 Two Sum(系列)
- 57 有序数组中和为s的两个数(167 Two Sum II - Input array is sorted)
- 3Sum(系列) + 4sum
- Contains Duplicate
- 3 数组中重复的数字(287. Find the Duplicate Number)
- 26 Remove Duplicates from Sorted Array
- 39 数组中出现次数超过一半的数字
- 53 数字在排序数组中出现的次数
- 旋转数组(189. Rotate Array)
- Intersection of Two Arrays(系列)
- 228. Summary Ranges
- 66 构建乘积数组(cnblogs)
- 21 调整数组顺序使奇数位于偶数前面
- 61 扑克牌中的顺子
- 45 把数组排成最小的数
- 51 数组中的逆序对
- Increasing Triplet Subsequence
- Plus One
- Move Zeroes
- Valid Sudoku
- Rotate Image
矩阵
- 4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)
- 29 顺时针打印矩阵(54. Spiral Matrix)(系列)
- Kth Smallest Element in a Sorted Matrix
- Set Matrix Zeroes(cnblogs)
位运算
- 位运算规律总结
- 15 二进制中1的个数(191. Number of 1 Bits)
- 56 数组中只出现一次的数字(136. Single Number)(系列)
特殊数与数位
- 204. Count Primes
- 263. Ugly Number(系列)
- 43 1~n整数中1出现的次数 (233. Number of Digit One )
- 44 数字序列中某一位的数字(400. Nth Digit)
字符串
- 50 第一个只出现一次的字符(387. First Unique Character in a String)
- 5 替换空格
- Reverse String
- Reverse Integer
- 58 翻转字符串(翻转单词与左旋转字符串)
- 67 把字符串转成整数
- String to Integer (atoi)
- Implement strStr()(cnblogs)
- 38 字符串的排列(全排列问题)
- Longest Common Prefix(cnblogs)
- Valid Parentheses(括号对)(cnblogs)
- Valid Palindrome(回文词系列)
- Longest Palindromic Substring
- 242. Valid Anagram (变位词系列)
- 48 最长不含重复字符的子字符串(3. Longest Substring Without Repeating Characters)
- Count and Say
- 19 正则表达式匹配(hard,了解即可)
- 20 表示数值的字符串(了解即可)
栈和队列
- 9.1 用队列实现栈(225. Implement Stack using Queues)
- 9.2 用栈实现队列(232. Implement Queue using Stacks)
- 30 包含min函数的栈(155. Min Stack)
- 31 栈的压入、弹出序列
- 59 队列(滑动窗口)的最大值
链表
- 14 反转链表 206. Reverse Linked List(系列)
- 6 从尾到头打印链表
- 18 删除链表中的结点(237. Delete Node in a Linked List)
- 22 删除链表中倒数第k个结点(19. Remove Nth Node From End of List)(cnblogs)
- 52 两个链表的第一个公共结点(Intersection of Two Linked Lists)
- 23 有环链表问题-链表中环的入口结点(141. Linked List Cycle)
- 25 合并两个排序的链表(系列)(21. Merge Two Sorted Lists)
- 35 复杂链表的复制(138. Copy List with Random Pointer)
- Add Two Numbers
- 328. Odd Even Linked List
- Palindrome Linked List
树
- 二叉树的遍历总结(前序、中序、后序、层序、 之字形层序、垂直序)
- 二叉查找树的查找、插入、删除
- 68 树中两个节点的最低公共祖先
- 104. Maximum Depth of Binary Tree
- 110. Balanced Binary Tree
- 28 对称二叉树(101. Symmetric Tree)
- 27 二叉树的镜像
- 26 树的子结构(572. Subtree of Another Tree)
- 34 二叉树中和为某一值的路径(112. Path Sum)
- 124. Binary Tree Maximum Path Sum
- 37 序列化二叉树(297. Serialize and Deserialize Binary Tree)(cnblogs)
- 7 重建二叉树(系列)
- Validate Binary Search Tree
- 36 二叉搜索树与双向链表
- 33 判断某序列是否为二叉搜索树的后序序列
- Kth Smallest Element in a BST(cnblogs)
- Convert Sorted Array to Binary Search Tree(cnblogs)
- Populating Next Right Pointers in Each Node
- 8 二叉树中序遍历的下一个结点
查找与排序
- 二分查找小结
- 40 最小的k个数(对应Kth Largest Element in an Array)
- 41 数据流中的中位数(295. Find Median from Data Stream)
- Median of Two Sorted Arrays
- Merge Sorted Array
- 33 Search in Rotated Sorted Array(系列)(cnblogs)
- 11旋转数组的最小数字(153. Find Minimum in Rotated Sorted Array)(系列)
- Search for a Range
- Find Peak Element
- First Bad Version
- Sort Colors(cnblogs)
- Top K Frequent Elements
- Merge Intervals(cnblogs)
- Wiggle Sort(系列)
动态规划与贪婪法
- 70 Climbing Stairs
- 14 剪绳子
- 剑指Offer-46:把数字翻译成字符串
- 42 连续子数组的最大和(53. Maximum Subarray)
- Maximum Product Subarray
- 《算法导论》动态规划、贪婪法与分治法ppt
- 47:礼物的最大价值
- House Robber(系列)
- Unique Paths(系列)
- Longest Increasing Subsequence
- 121. Best Time to Buy and Sell Stock(系列)
- Jump Game(系列)
- Coin Change(系列)
- Burst Balloons
- Word Break(系列)
- 背包问题总结
回溯法和暴力枚举法
- 排列与组合
- 12 矩阵中的字符串查找(79. Word Search 系列)
- 13 机器人的运动范围
- Generate Parentheses
- Letter Combinations of a Phone Number
- Number of Islands
- Subsets(系列)
分治法
- 16 数值的整数次方(50. Pow(x, n))
- 42 连续子数组的最大和(53. Maximum Subarray)
- Sqrt(x)
发散思维题
- 17 打印从1到最大的n位数
- 43 n个骰子的点数
- 62 圆圈中最后剩下的数字(约瑟夫环问题)
- 64 求1+2+…+n
- 65 不用加减乘除做加法
- 231. Power of Two(系列)
- Fizz Buzz(cnblogs)
- Roman to Integer
- Shuffle an Array
【LeetCode 剑指offer 刷题笔记】汇总(已完成)相关推荐
- 力扣(LeetCode)剑指offer刷题笔记(java),已完结!!!
文章目录 3.数组中重复的数字 4.二维数组中的查找 5.替换空格 6.从尾到头打印链表 7.重建二叉树 9.两个栈来实现一个队列 10-1.斐波那契数列 10-2.跳台阶 11.旋转数组的最小数字 ...
- 【LeetCode 剑指offer刷题】树题6:28 对称二叉树(101. Symmetric Tree)
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 101. Symmetric Tree /** * Definition for a binary tree no ...
- 【LeetCode 剑指offer刷题】数组题2:57 有序数组中和为s的两个数(167 Two Sum II - Input array is sorted)...
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 57 有序数组中和为s的两个数 题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是 ...
- 【LeetCode 剑指offer刷题】字符串题6:67 把字符串转成整数
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 67 把字符串转成整数 题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符 ...
- 【LeetCode 剑指offer刷题】树题16:Kth Smallest Element in a BST
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Kth Smallest Element in a BST Given a binary search tree, ...
- 【LeetCode 剑指offer刷题】回溯法与暴力枚举法题6:Number of Islands
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Number of Islands Given a 2d grid map of '1's (land) and ' ...
- 【LeetCode 剑指offer刷题】查找与排序题14:Wiggle Sort(系列)
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Wiggle Sort II Given an unsorted array nums, reorder it su ...
- 【LeetCode 剑指offer刷题】查找与排序题12:Top K Frequent Elements
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Top K Frequent Elements Given a non-empty array of integer ...
- 【LeetCode 剑指offer刷题】矩阵题1:4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)...
[LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 74. Search a 2D Matrix Write an efficient algorithm that s ...
最新文章
- MPB:林科院袁志林组-​内生镰刀菌基因组染色体级别组装和注释
- cpc卡内计费信息异常包括_抖音信息流落地页直达广告怎么做?
- IE8 CSS HACK 兼容集合
- linux ora 01092,ORA-01173的模拟与故障处理
- .NET 实现并行的几种方式(二)
- 浙江大学PAT上机题解析之1008. 数组元素循环右移问题 (20)
- 互联网日报 | 7月3日 星期六 | 滴滴回应被网络安全审查;小米启动“青年工程师激励计划”;阿里成立生活服务板块...
- oracle11g scn 补丁,Oracle11g中SCN与TimeStamp的相互转换
- Task04:集合运算-表的加减法和join等-天池龙珠计划SQL训练营
- php m.baidu.com,http://m.baidu.com/baidu.php?u
- 面试了57位程序员,我发现混得好的人都有这个特质!
- mongodb 笔记
- 网络浏览器大战(Google与IE的较量)
- 支付系统源码商业版 完美可运营
- iphone11 android,iphone11launcher
- flink on yarn 103错误浅析
- 逻辑电路是计算机学的吗,下列属于组合逻辑电路的是( )。
- 《欲望之源》(《MEAN GENES》)
- idea报错Cannot run program tomcat的catalina.bat文件或windows无法找到bat文件
- torch.bernoulli 的使用方法(附代码示例)
热门文章
- python 几何_使用Python写入几何
- SAP FICO 创建修改会计科目 GL_ACCT_MASTER_SAVE
- 【在线课件制作软件】Focusky教程 | 使用主题
- 基于h5的微课教学系统
- Android 上关于设备唯一标识的调研
- Python学习第九篇:zipfile 库操作压缩包
- 博士申请 | 香港科技大学郭毅可教招收创造性人工智能方向博士/博后/RA
- Excel自动为有值的单元格添加边框
- 第三届“互联网+教育”创新周在京启动
- 企业申请车辆蓄电池E-mark认证要提前准备些什么资料?