前言

  不知不觉就结束了自己的秋招之路,虽感觉有些艰辛但是收获很多。找工作那段时间做了很多学习笔记,这是数据结构与算法相关的一部分笔记,这一块除了复习相关教科书,还有就是刷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平台

  1. OJ术语
  2. 如何处理输入问题
  3. OJ编程实例(cnblogs)

数组:

  1. 1 Two Sum(系列)
  2. 57 有序数组中和为s的两个数(167 Two Sum II - Input array is sorted)
  3. 3Sum(系列) + 4sum
  4. Contains Duplicate
  5. 3 数组中重复的数字(287. Find the Duplicate Number)
  6. 26 Remove Duplicates from Sorted Array
  7. 39 数组中出现次数超过一半的数字
  8. 53 数字在排序数组中出现的次数
  9. 旋转数组(189. Rotate Array)
  10. Intersection of Two Arrays(系列)
  11. 228. Summary Ranges
  12. 66 构建乘积数组(cnblogs)
  13. 21 调整数组顺序使奇数位于偶数前面
  14. 61 扑克牌中的顺子
  15. 45 把数组排成最小的数
  16. 51 数组中的逆序对
  17. Increasing Triplet Subsequence
  18. Plus One
  19. Move Zeroes
  20. Valid Sudoku
  21. Rotate Image

矩阵

  1. 4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)
  2. 29 顺时针打印矩阵(54. Spiral Matrix)(系列)
  3. Kth Smallest Element in a Sorted Matrix
  4. Set Matrix Zeroes(cnblogs)

位运算

  1. 位运算规律总结
  2. 15 二进制中1的个数(191. Number of 1 Bits)
  3. 56 数组中只出现一次的数字(136. Single Number)(系列)

特殊数与数位

  1. 204. Count Primes
  2. 263. Ugly Number(系列)
  3. 43 1~n整数中1出现的次数 (233. Number of Digit One )
  4. 44 数字序列中某一位的数字(400. Nth Digit)

字符串

  1. 50 第一个只出现一次的字符(387. First Unique Character in a String)
  2. 5 替换空格
  3. Reverse String
  4. Reverse Integer
  5. 58 翻转字符串(翻转单词与左旋转字符串)
  6. 67 把字符串转成整数
  7. String to Integer (atoi)
  8. Implement strStr()(cnblogs)
  9. 38 字符串的排列(全排列问题)
  10. Longest Common Prefix(cnblogs)
  11. Valid Parentheses(括号对)(cnblogs)
  12. Valid Palindrome(回文词系列)
  13. Longest Palindromic Substring
  14. 242. Valid Anagram (变位词系列)
  15. 48 最长不含重复字符的子字符串(3. Longest Substring Without Repeating Characters)
  16. Count and Say
  17. 19 正则表达式匹配(hard,了解即可)
  18. 20 表示数值的字符串(了解即可)

栈和队列

  1. 9.1 用队列实现栈(225. Implement Stack using Queues)
  2. 9.2 用栈实现队列(232. Implement Queue using Stacks)
  3. 30 包含min函数的栈(155. Min Stack)
  4. 31 栈的压入、弹出序列
  5. 59 队列(滑动窗口)的最大值

链表

  1. 14 反转链表 206. Reverse Linked List(系列)
  2. 6 从尾到头打印链表
  3. 18 删除链表中的结点(237. Delete Node in a Linked List)
  4. 22 删除链表中倒数第k个结点(19. Remove Nth Node From End of List)(cnblogs)
  5. 52 两个链表的第一个公共结点(Intersection of Two Linked Lists)
  6. 23 有环链表问题-链表中环的入口结点(141. Linked List Cycle)
  7. 25 合并两个排序的链表(系列)(21. Merge Two Sorted Lists)
  8. 35 复杂链表的复制(138. Copy List with Random Pointer)
  9. Add Two Numbers
  10. 328. Odd Even Linked List
  11. Palindrome Linked List

  1. 二叉树的遍历总结(前序、中序、后序、层序、 之字形层序、垂直序)
  2. 二叉查找树的查找、插入、删除
  3. 68 树中两个节点的最低公共祖先
  4. 104. Maximum Depth of Binary Tree
  5. 110. Balanced Binary Tree
  6. 28 对称二叉树(101. Symmetric Tree)
  7. 27 二叉树的镜像
  8. 26 树的子结构(572. Subtree of Another Tree)
  9. 34 二叉树中和为某一值的路径(112. Path Sum)
  10. 124. Binary Tree Maximum Path Sum
  11. 37 序列化二叉树(297. Serialize and Deserialize Binary Tree)(cnblogs)
  12. 7 重建二叉树(系列)
  13. Validate Binary Search Tree
  14. 36 二叉搜索树与双向链表
  15. 33 判断某序列是否为二叉搜索树的后序序列
  16. Kth Smallest Element in a BST(cnblogs)
  17. Convert Sorted Array to Binary Search Tree(cnblogs)
  18. Populating Next Right Pointers in Each Node
  19. 8 二叉树中序遍历的下一个结点

查找与排序

  1. 二分查找小结
  2. 40 最小的k个数(对应Kth Largest Element in an Array)
  3. 41 数据流中的中位数(295. Find Median from Data Stream)
  4. Median of Two Sorted Arrays
  5. Merge Sorted Array
  6. 33 Search in Rotated Sorted Array(系列)(cnblogs)
  7. 11旋转数组的最小数字(153. Find Minimum in Rotated Sorted Array)(系列)
  8. Search for a Range
  9. Find Peak Element
  10. First Bad Version
  11. Sort Colors(cnblogs)
  12. Top K Frequent Elements
  13. Merge Intervals(cnblogs)
  14. Wiggle Sort(系列)

动态规划与贪婪法

  1. 70 Climbing Stairs
  2. 14 剪绳子
  3. 剑指Offer-46:把数字翻译成字符串
  4. 42 连续子数组的最大和(53. Maximum Subarray)
  5. Maximum Product Subarray
  6. 《算法导论》动态规划、贪婪法与分治法ppt
  7. 47:礼物的最大价值
  8. House Robber(系列)
  9. Unique Paths(系列)
  10. Longest Increasing Subsequence
  11. 121. Best Time to Buy and Sell Stock(系列)
  12. Jump Game(系列)
  13. Coin Change(系列)
  14. Burst Balloons
  15. Word Break(系列)
  16. 背包问题总结

回溯法和暴力枚举法

  1. 排列与组合
  2. 12 矩阵中的字符串查找(79. Word Search 系列)
  3. 13 机器人的运动范围
  4. Generate Parentheses
  5. Letter Combinations of a Phone Number
  6. Number of Islands
  7. Subsets(系列)

分治法

  1. 16 数值的整数次方(50. Pow(x, n))
  2. 42 连续子数组的最大和(53. Maximum Subarray)
  3. Sqrt(x)

发散思维题

  1. 17 打印从1到最大的n位数
  2. 43 n个骰子的点数
  3. 62 圆圈中最后剩下的数字(约瑟夫环问题)
  4. 64 求1+2+…+n
  5. 65 不用加减乘除做加法
  6. 231. Power of Two(系列)
  7. Fizz Buzz(cnblogs)
  8. Roman to Integer
  9. Shuffle an Array

【LeetCode 剑指offer 刷题笔记】汇总(已完成)相关推荐

  1. 力扣(LeetCode)剑指offer刷题笔记(java),已完结!!!

    文章目录 3.数组中重复的数字 4.二维数组中的查找 5.替换空格 6.从尾到头打印链表 7.重建二叉树 9.两个栈来实现一个队列 10-1.斐波那契数列 10-2.跳台阶 11.旋转数组的最小数字 ...

  2. 【LeetCode 剑指offer刷题】树题6:28 对称二叉树(101. Symmetric Tree)

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 101. Symmetric Tree /**  * Definition for a binary tree no ...

  3. 【LeetCode 剑指offer刷题】数组题2:57 有序数组中和为s的两个数(167 Two Sum II - Input array is sorted)...

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 57 有序数组中和为s的两个数 题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是 ...

  4. 【LeetCode 剑指offer刷题】字符串题6:67 把字符串转成整数

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 67 把字符串转成整数 题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符 ...

  5. 【LeetCode 剑指offer刷题】树题16:Kth Smallest Element in a BST

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Kth Smallest Element in a BST Given a binary search tree, ...

  6. 【LeetCode 剑指offer刷题】回溯法与暴力枚举法题6:Number of Islands

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Number of Islands Given a 2d grid map of '1's (land) and ' ...

  7. 【LeetCode 剑指offer刷题】查找与排序题14:Wiggle Sort(系列)

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Wiggle Sort II Given an unsorted array nums, reorder it su ...

  8. 【LeetCode 剑指offer刷题】查找与排序题12:Top K Frequent Elements

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Top K Frequent Elements Given a non-empty array of integer ...

  9. 【LeetCode 剑指offer刷题】矩阵题1:4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)...

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 74. Search a 2D Matrix Write an efficient algorithm that s ...

最新文章

  1. MPB:林科院袁志林组-​内生镰刀菌基因组染色体级别组装和注释
  2. cpc卡内计费信息异常包括_抖音信息流落地页直达广告怎么做?
  3. IE8 CSS HACK 兼容集合
  4. linux ora 01092,ORA-01173的模拟与故障处理
  5. .NET 实现并行的几种方式(二)
  6. 浙江大学PAT上机题解析之1008. 数组元素循环右移问题 (20)
  7. 互联网日报 | 7月3日 星期六 | 滴滴回应被网络安全审查;小米启动“青年工程师激励计划”;阿里成立生活服务板块...
  8. oracle11g scn 补丁,Oracle11g中SCN与TimeStamp的相互转换
  9. Task04:集合运算-表的加减法和join等-天池龙珠计划SQL训练营
  10. php m.baidu.com,http://m.baidu.com/baidu.php?u
  11. 面试了57位程序员,我发现混得好的人都有这个特质!
  12. mongodb 笔记
  13. 网络浏览器大战(Google与IE的较量)
  14. 支付系统源码商业版 完美可运营
  15. iphone11 android,iphone11launcher
  16. flink on yarn 103错误浅析
  17. 逻辑电路是计算机学的吗,下列属于组合逻辑电路的是( )。
  18. 《欲望之源》(《MEAN GENES》)
  19. idea报错Cannot run program tomcat的catalina.bat文件或windows无法找到bat文件
  20. torch.bernoulli 的使用方法(附代码示例)

热门文章

  1. python 几何_使用Python写入几何
  2. SAP FICO 创建修改会计科目 GL_ACCT_MASTER_SAVE
  3. 【在线课件制作软件】Focusky教程 | 使用主题
  4. 基于h5的微课教学系统
  5. Android 上关于设备唯一标识的调研
  6. Python学习第九篇:zipfile 库操作压缩包
  7. 博士申请 | 香港科技大学郭毅可教招收创造性人工智能方向博士/博后/RA
  8. Excel自动为有值的单元格添加边框
  9. 第三届“互联网+教育”创新周在京启动
  10. 企业申请车辆蓄电池E-mark认证要提前准备些什么资料?