![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
刷题总结
文章平均质量分 61
记录都做过哪些题
18阿鲁
只为成功找方法,不为失败找借口
展开
-
容斥原理-题目总结
容斥原理原创 2022-10-16 17:37:09 · 162 阅读 · 0 评论 -
贪心题目-总结
贪心题目类型总结原创 2022-07-07 22:10:24 · 99 阅读 · 0 评论 -
LeetCode周赛总结
LeetCode周赛总结原创 2022-08-29 01:20:14 · 189 阅读 · 0 评论 -
逆向思维 脑经急转弯
逆向思维 脑经急转弯原创 2022-08-27 23:04:31 · 125 阅读 · 0 评论 -
算法题经常出错的地方与技巧总结
算法题经常出错的地方原创 2022-07-15 20:31:58 · 129 阅读 · 0 评论 -
博弈的题型总结
博弈原创 2022-07-08 22:07:35 · 505 阅读 · 0 评论 -
模拟类型的题目
模拟原创 2022-07-04 22:56:26 · 578 阅读 · 0 评论 -
图论-题型总结
z原创 2022-06-23 04:47:20 · 166 阅读 · 0 评论 -
最大最小问题总结
z原创 2022-06-22 01:18:06 · 101 阅读 · 0 评论 -
前缀和-题型总结
前缀和原创 2022-06-15 00:30:15 · 192 阅读 · 0 评论 -
并查集题型总结
并查集是集合,能够快速合并,能够快速查询两个节点是否在同一集合中的一种数据结构。一般用树(数组)实现。原创 2022-06-13 22:45:00 · 109 阅读 · 0 评论 -
分治思想的题目
AAAAA395. 至少有 K 个重复字符的最长子串找到字符个数小于k的字符,用这个字符把字符串切分成几份,然后递归解决切分后的字符串,选择最大的返回结果。原创 2022-05-29 01:22:27 · 125 阅读 · 0 评论 -
滑动窗口做题总结
*****3. 无重复字符的最长子串重点是确定左边界。利用map可以免去第二层循环遍历寻找相同的字符。原创 2022-05-21 16:08:15 · 94 阅读 · 0 评论 -
公司套题题解
题目出错次数最小唯一前缀1原创 2022-04-05 18:33:46 · 158 阅读 · 0 评论 -
前缀树-题目总结
文章目录题目类型题目类型*最小唯一前缀时间复杂度O(n),空间复杂度O(n)。当遇到出现次数是1时,说明就是最小唯一前缀了。原创 2022-04-05 18:25:02 · 290 阅读 · 0 评论 -
考点是边界条件判断的题目
文章目录题目题目*304. 二维区域和检索 - 矩阵不可变求和时注意不是dp[row2][col2] - dp[row2][col1] - dp[row1][col2] + dp[row1][col1];因为这样会把目标区域的最上面一行和最左面的一列给排出掉了。应该是dp[row2][col2] - dp[row2][col1-1] - dp[row1-1][col2] + dp[row1-1][col1-1],这样求出的区域才是左上角与右下角围城的区域之和。......原创 2022-04-04 19:51:23 · 264 阅读 · 0 评论 -
华为机试记录
HJ20 密码验证合格程序原创 2022-02-26 22:39:36 · 126 阅读 · 0 评论 -
ACM模式 输入输出总结
文章目录Scanner的next与nextLineScanner的next与nextLineScanner 是使用分隔符将输入的内容分为一个个标记token,默认的分隔符是空格。可以使用各个next方法,将token转成需要的内容格式并返回。next 找到下一个完整的标记token,并返回nextLine 以行分隔符作为分隔符,会把行分隔符之前的内容作为token返回。...原创 2022-02-20 16:29:37 · 456 阅读 · 0 评论 -
数组-类型总结
集合List转数组原创 2022-02-13 17:48:17 · 276 阅读 · 0 评论 -
数学-类型题目总结
文章目录求余 取模计算公式运算规则求余 取模计算公式对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求 整数商: c = a/b;2.计算模或者余数: r = a - c*b.求模运算和求余运算在第一步不同: 取模求余运算在取c的值时,向0 方向舍入(fix()函数); 而求余取模运算在计算c的值时,向无穷小方向舍入(floor()函数)。不同环境下“%”运算符的含义也不同:1.c/c++、Java为求余2.Python为取模参考链接:https://blog.csdn.net原创 2022-02-13 15:42:42 · 547 阅读 · 0 评论 -
哈希-题型总结
构建键值对不一定要建立map,也可以使用数组,如LeetCode645错误的集合。原创 2022-02-04 12:28:25 · 127 阅读 · 0 评论 -
位运算-总结
优先级【高到低】:第一级:圆括号【()】、下标运算符【[]】、分量运算符的指向结构体成员运算符【->】、结构体成员运算符【.】。第二级:逻辑非运算符【!】、按位取反运算符【~】、自增自减运算符【++ --】、负号运算符【-】、类型转换运算符【(类型)】、指针运算符和取地址运算符【*和&】、长度运算符【sizeof】。第三级:乘法运算符【*】、除法运算符【/】、取余运算符【%】。第四级:加法运算符【+】、减法运算符【-】。第五级:左移动运算符【<<】、右移动运算符【>原创 2022-01-25 23:07:01 · 137 阅读 · 0 评论 -
设计类-题目总结
设计数据结构类的题目,需要从要实现的方法入手,看为了达到这个方法的效果,我们应该需要哪些基础的数据结构作为这个复杂数据结构的属性。同时注意在初始化的时候要给这些属性赋初始值。例题:LeetCode173. 二叉搜索树迭代器.........原创 2022-01-23 00:08:41 · 169 阅读 · 0 评论 -
二分查找-总结
有序就要考虑二分查找退出循环条件while(left < right)到底是"<",还是"<=",取决于想不想判断left==right的情况,想就写成while(left <= right),不然就是while(left < right)原创 2022-01-16 19:32:33 · 123 阅读 · 0 评论 -
做题技巧总结
要求返回数组,但不确定是否能够把数组完全填充若题目要求的返回类型是数组类型,但不确定是否能够把数组完全填充。这种情况以往使用链表保存计算结果,待计算结束再去把链表转成数组,这样太麻烦了,可以直接使用数组,利用位移变量判断最终的数组内容是否完全被填充,例如,210. 课程表 II中的这段代码:int[] ans = new int[numCourses];int index = 0;while(!que.isEmpty()){ int tmp = que.poll(); ans[ind原创 2022-01-16 11:38:20 · 146 阅读 · 0 评论 -
拓扑排序-总结
概念拓扑排序是一个从入度为0的结点开始,不断弹出,诞生新的入度为0的结点,再弹出,如此往复直到没有结点。如果还有节点说明存在环。代码模板入度数组: 记录每个结点的入度情况邻接链表(邻接数组): 存储以当前结点为优先结点的所有结点队列: 存储入度为0的结点//构建入度数组、邻接链表(邻接数组)int[] degree = new int[n];List<List<Integer>> adjoin = new ArrayList<>();//邻接链表要给每个原创 2022-01-15 22:03:55 · 358 阅读 · 0 评论 -
链表-刷题总结
文章目录node.next的理解注意给最后一个结点的后继赋空基础操作反转链表合并有序的链表关于链表解法很好的总结:https://suanfa8.com/data-structure-basic/linked-list/practice/node.next的理解node.next在等号左边表示node的后继索引。node.next在等号的右边表示node的后继结点。一个是指针,一个是结点。注意给最后一个结点的后继赋空比如,206. 反转链表递归解法中,一定是要给当前结点head的后继赋空,否则原创 2022-01-09 19:07:31 · 330 阅读 · 0 评论 -
BFS/DFS-题目总结
图形问题,使用BFS/DFS都要考虑一个结点是不是已经被遍历过了。原创 2021-12-13 23:38:15 · 272 阅读 · 0 评论 -
字符串String-题目总结
修改字符串中的字符注意s.charAt(i) 是从字符串中获取值,不能给s.charAt(i)赋值,string的字符不能修改,要修改也得转成stringbuffer或stringbuilder。参考:709. 转换成小写字母大小写字母转换(位运算)大写变小写、小写变大写 : 字符 ^= 32;大写变小写、小写变小写 : 字符 |= 32;小写变大写、大写变大写 : 字符 &= -33;..................原创 2021-12-12 13:35:41 · 535 阅读 · 0 评论 -
双指针总结
双指针的思想是左右两个指针,不停的向里面缩进。如42. 接雨水原创 2021-12-04 15:51:02 · 106 阅读 · 0 评论 -
堆 Lambda表达式 Comparator、compare、compareTo
搬运自:https://blog.csdn.net/lijinzhou2017/article/details/82757444函数式接口(functional interface 也叫功能性接口,其实是同一个东西)。函数式接口就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。Java中的lambda无法单独出现,它需要一个函数式接口来盛放,lambda表达式方法体其实就是函数接口的实现。Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许原创 2021-11-29 10:57:49 · 630 阅读 · 0 评论 -
回溯-题目总结
回溯是一种算法思想,能够回到过去,恢复现场。原创 2020-05-19 17:48:15 · 268 阅读 · 1 评论 -
动态规划-题目总结
01背包有N件物品和一个最多能被重量为W 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。二维数组数组dp[i][j] =new int[N][W+1]确定dp数组以及下标的含义dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。确定递推公式dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] +原创 2021-09-11 13:34:23 · 389 阅读 · 0 评论 -
栈-总结
一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了第一个比自己大的元素:单调递增(从栈顶向栈底看)第一个比自己小的元素:单调递减(从栈顶向栈底看).........原创 2021-10-27 21:05:51 · 191 阅读 · 0 评论 -
二叉树-题型总结
迭代遍历二叉树使用栈把遍历过的结点压入栈,通过改变list.add(cur.val)的位置,实现非递归前序遍历和中序遍历。Stack<Integer> stack = new Stack<>();NodeTree cur = root;while(!stack.isEmpty() || cur != null){ while(cur != null){//这个wh............原创 2020-04-14 10:34:47 · 274 阅读 · 0 评论 -
写博客的技巧
添加颜色常用的MarkDown颜色 笔记颜色设置原创 2021-09-29 21:29:08 · 91 阅读 · 0 评论 -
LeetCode题解汇总
97. 交错字符串原创 2021-08-28 17:23:14 · 778 阅读 · 0 评论 -
牛客面试必考真题【算法篇】高频Top200 题目汇总
NC6 二叉树的最大路径和原创 2021-08-25 19:32:24 · 1440 阅读 · 0 评论