首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Leetcode笔记
zhyy
创建于2021-07-03
订阅专栏
这个专栏记录一些平时刷题遇到的小tips,总结遇到的题型,方法,或者有意思的题目,也会加入一些高频算法题拿来分享
等 1 人订阅
共17篇文章
创建于2021-07-03
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Leetcode之动态规划专题
一. 动态规划算法概述 1.什么是动态规划算法 首先,动态规划问题的一般形式就是求最值。动态规划其实是运筹学的一种最优化方法,只不过在计算机问题上应用比较多,比如说让你求最长递增子序列呀,最小编辑距离
剑指offer38 字符串排列
这道题是一道简单的回朔算法题,其中一步优化就是判断同一层是否访问过元素,如果重复,就没必要再继续遍历该重复元素,可以节省大量时间。 原题: 思路: 代码:
Leetcode148排序链表
时间复杂度 O(n log n) 的排序算法有归并排序,快速排序,和桶排序。第一个归并排序应用到分治的思想,比较常考,下面写出列表形式和链表形式的归并排序。 数组形式的归并排序 链表形式归并排序
Leetcode204 计算质数
暴力法简单实时超时,第二种埃式筛比较巧妙。 初始化长度 O(n)的标记数组,表示这个数组是否为质数。数组初始化所有的数都是质数. 从 2 开始将当前数字的倍数全都标记为合数。标记到根号n时停止即可。
Leetcode143. 重排链表
这道题采用反转链表那道工具题+快慢指针。最后一步的合并链表,只要理清楚每一轮的迭代关系,也很好解 时间复杂度:O(n) 空间复杂度: O(1)
Leetcode611. 有效三角形的个数
这道题是三数之和和双指针结合的一道题 首先对数组排序。 固定最长的一条边,运用双指针扫描 如果 nums[l] + nums[r] > nums[i],同时说明 nums[l + 1] + nums[
高频题——排序奇升偶降链表
来看一下几篇面经的原文叙述 思路很清晰,实现起来其实还是有些难度的,因为这里的每一步其实都可以单独抽出来作为一道题。第2步和第3步分别对应的力扣206. 反转链表和21. 合并两个有序链表,而第1步的
Leetcode98. 验证二叉搜索树
这道题结合二叉搜索树的特点,二叉搜索树的中序遍历就是该树的升序排列,如果中间出现非升序状况(即前者大于等于后者),一定不是二叉搜索树。
Leetcode581 最短无序连续子数组
这道题有三种方法 另外,对于寻边界的问题,首先要想到单调栈,用于存放最值(或者最值位置,视情况而定) 方法一:时间复杂度O(n^2),空间复杂度O(1) 方法二:时间复杂度O(n)+O(nlogn),
Leetcode287 寻找重复数
这道题是典型的判断环形链表的题,与141. 环形链表,142. 环形链表 II。属于同一类,都是快慢指针先找到相遇点,再从相遇点开始,slow从0开始,再走一遍,就是重复点(相交起始点)。这是【Flo
Leetcode297 二叉树的序列化与反序列化
这道题是当时字节的一道面试题,对二叉树进行序列化和反序列化 序列化可以利用前序,中序,后序遍历均可;反序列的时候要用相同的规则即可
Leetcode84 最大矩形
这道题用暴力解法不难,只是肯定会超时。想要优化成O(n)可以用单调栈,单调栈经常用来解决边界问题 直接上代码。 参考
【Leetcode】221 最大正方形
动态规划+正方形,比较典型的一种体形 其中,dp(i, j) 是以 matrix(i - 1, j - 1) 为 右下角 的正方形的最大边长。等同于:dp(i + 1, j + 1) 是以 matri
Leetcode213&&337 打家劫舍II&&III
数组复制可以用Arrays.copyOfRange(arr,start,end), 指定数组区间 此外,这个问题是将环状问题约化为两个单排列问题。 状态定义: 设动态规划列表 dp ,dp[i] 代表
Leetcode55 & 45 跳跃游戏
方法一:递归+记忆集,思考起来比较简单,但是因为有循环递归,非常耗时; 方法二:直接用贪心算法的思想,每次取最远的地方跳过去
Leetcode62 & 63不同路径
这是一道典型的动态规划问题,状态转移方程也比较直接,以下列出三种优化方式,优化空间复杂度 1.状态转移方程 令dp[i][j] 是到达 i, j 最多路径 这道题我们从终点[m-1][n-1]这个ta
Leecode 451字符串频率
这道题很简单,秒选哈希表(虽然时间复杂度比较高,这个之后讲),但是写的时候才想起来HashMap只能对Key进行排序,算是借着这个小题提醒下自己。可以先把Map专成List,然后就能用Collecti