leetcode easy 762

leetcode 题库994——bfs典型解法(队列+递归实现)

class Solution: def orangesRotting(self, grid: list[list[int]]) -> int: m,n=len(grid),len(grid[0]) queue,good=[],[] def bfs(queue,good,m,n,grid): time ......
解法 队列 题库 leetcode 典型

LeetCode题库77.组合——dfs典型解法,递归+回溯+剪枝

class Solution: def combine(self, n: int, k: int): nums=[x+1 for x in range(n)] res,ans=[],[] def dfs(nums:list[int]): if len(ans)==k: ans_copy=ans.co ......
解法 题库 LeetCode 典型 dfs

leetcode_35. 搜索插入位置

题目描述 35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 输入: nums = [1,3,5,6], target = 5 输出: 2 输入: nums ......
leetcode 位置 35

LeetCode —— 排序

148. 排序链表 一般都用归并排序,因为是单向链表,其它排序算法根据下标找元素,向前遍历等都比较困难 主函数流程是: 如果 head==null || head.next==null return head。因为 head.next == null 即只有一个元素时,不用再划分了,而且一个元素本身 ......
LeetCode

【LeetCode动态规划#17】知道秘密的人,维护多个dp数组

### 知道秘密的人数 在第 1 天,有一个人发现了一个秘密。 给你一个整数 delay ,表示每个人会在发现秘密后的 delay 天之后,每天 给一个新的人 分享 秘密。同时给你一个整数 forget ,表示每个人在发现秘密 forget 天之后会 忘记 这个秘密。一个人 不能 在忘记秘密那一天及 ......
数组 LeetCode 多个 秘密 动态

【LeetCode回溯算法#12】二叉树的直径,树形dp的前置内容(使用dfs)

### 二叉树的直径 给你一棵二叉树的根节点,返回该树的 **直径** 。 二叉树的 **直径** 是指树中任意两个节点之间最长路径的 **长度** 。这条路径可能经过也可能不经过根节点 `root` 。 两节点之间路径的 **长度** 由它们之间边数表示。 **示例 1:** ``` 输入:roo ......
树形 直径 算法 LeetCode 内容

NC19989 [HAOI2012]容易题(EASY)

[题目链接](https://ac.nowcoder.com/acm/problem/19989) # 题目 **题目描述** 为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下: 有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不 ......
19989 HAOI 2012 EASY NC

Leetcode 228. 汇总区间

# 1.题目描述 给定一个 无重复元素 的 有序 整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 nums 的数字 x 。 列表中的每个区间范围 [a,b] 应该按如下格式输 ......
区间 Leetcode 228

LeetCode 131. 分割回文串

#题目链接:[LeetCode 131. 分割回文串](https://leetcode.cn/problems/palindrome-partitioning/description/) ##题意: 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割 ......
回文 LeetCode 131

Leetcode 454. 四数相加 II(4sum ii)

[题目链接](https://leetcode.cn/problems/4sum-ii) 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: - 0 nums1[0] + nums2[0] + nums ......
Leetcode 4sum 454 sum II

[刷题记录Day21]Leetcode

# No.1 ## 题目 [二叉搜索树的最小绝对差](https://leetcode.cn/problems/minimum-absolute-difference-in-bst/) ## 思路 - 中序遍历的BST是有序序列 - 最小绝对差一定是在相邻的数组元素间 ## 代码 ```Java p ......
Leetcode Day 21

[刷题记录Day20]Leetcode二叉树

# No.1 ## 题目 [最大二叉树](https://leetcode.cn/problems/maximum-binary-tree/) ## 思路 - 递归法 - 注意保持区间定义一致`[left, right)` ## 递归分析 1. **返回值**:节点,**参数**:数组,起点,终点 ......
Leetcode Day 20

Leetcode 344. 反转字符串(Reverse string)

[题目链接🔗](https://leetcode.cn/problems/reverse-string) 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1 ......
字符串 字符 Leetcode Reverse string

[刷题记录Day14]Leetcode二叉树

# No.1 ## 题目 [前序遍历](https://leetcode.cn/problems/binary-tree-preorder-traversal/) ## 思路 - 递归法 ## 代码 ```Java public void Traverse(TreeNode node, List l ......
Leetcode Day 14

[刷题记录Day15]Leetcode二叉树

# No.1 ## 题目 [二叉树的层序遍历](https://leetcode.cn/problems/binary-tree-level-order-traversal/) ## 思路 - 使用队列 - 关键点:1. 每进入一层,层内的节点都被处理完成 2. 开始遍历层内的节点前,必须先记录该层 ......
Leetcode Day 15

[刷题记录Day16]Leetcode二叉树

# No.1 ## 题目 [二叉树的最大深度](https://leetcode.cn/problems/maximum-depth-of-binary-tree/) ## 思路 - 递归 - 其实是后序遍历的方式 ## 代码 ```Java public int maxDepth(TreeNode ......
Leetcode Day 16

[刷题记录Day17]Leetcode二叉树

# No.1 ## 题目 [平衡二叉树](https://leetcode.cn/problems/balanced-binary-tree/) ## 思路 - 递归法 - 在遍历中比较左右子树的高度差 ## 递归分析 1. **参数**:当前传入节点。 **返回值**:以当前传入节点为根节点的树的 ......
Leetcode Day 17

[刷题记录Day18]Leetcode二叉树

# No.1 ## 题目 [找树左下角的值](https://leetcode.cn/problems/find-bottom-left-tree-value/) ## 思路 - 队列,层序遍历 - Deque既可以用作栈也可以用作队列,谨慎使用 ## 代码 ```Java public int f ......
Leetcode Day 18

[刷题记录Day11]Leetcode

# No.1 ## 题目 [有效的括号](https://leetcode.cn/problems/valid-parentheses/) ## 思路 - 奇数个符号一定不符合 - 分析括号不匹配的可能性 - 第一种情况,字符串里左方向的括号多余了 ,所以不匹配 ![[brackets0.png]] ......
Leetcode Day 11

[刷题记录Day13]Leetcode

# No.1 ## 题目 [滑动窗口最大值](https://leetcode.cn/problems/sliding-window-maximum/) ## 思路 - 编写单调队列类 - [讲解](https://programmercarl.com/0239.%E6%BB%91%E5%8A%A8 ......
Leetcode Day 13

[刷题记录Day10]Leetcode

# No.1 ## 题目 [用栈实现队列](https://leetcode.cn/problems/implement-queue-using-stacks/) ## 思路 - 模拟 - 一个入栈一个出栈 ## 代码 ```Java class MyQueue { private Stack st ......
Leetcode Day 10

[刷题记录Day8]Leetcode

# No.1 ## 题目 [反转字符串](https://leetcode.cn/problems/reverse-string/) ## 思路 - 双指针,从头尾向中间遍历 ## 代码 ```Java public void reverseString(char[] s) { char temp; ......
Leetcode Day8 Day

[刷题记录Day9]Leetcode

>建议跳过 # No.1 ## 题目 [找出字符串中第一个匹配项的下标](https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/) ## 思路 - KMP ## 代码 ```Java ``` # ......
Leetcode Day9 Day

[刷题记录Day7]Leetcode哈希表

# No.1 ## 题目 [四数相加 II](https://leetcode.cn/problems/4sum-ii/) ## 思路 - 很妙的办法:有四个数组A、B、C、D,用hashMap记录【A、B中数字之和】+【这些和出现的次数】,再遍历C、D中数字组合,寻找【0-C、D中数字之和】在ha ......
Leetcode Day7 Day

[刷题记录Day6]Leetcode哈希表

# No.1 ## 题目 [有效的字母异位词](https://leetcode.cn/problems/valid-anagram/) ## 思路 - 每个字符频率都相同,于是把字母表映射到长度为26的数组上 ## 代码 ```Java public boolean isAnagram(Strin ......
Leetcode Day6 Day

VSCode使用JavaScript刷LeetCode配置教程(亲试可以!)

账号秘密都对,但是缺登录不成功的问题 诀窍可能是: 在属性设置中把LeetCode版本改成cn。点击LeetCode配置,修改Endpoint配置项,改成leetcode-cn,再次尝试登陆即可。 大家可移步原博文:https://blog.csdn.net/qq_37263248/article/ ......
JavaScript LeetCode 教程 VSCode

leetcode1260

这是一道模拟题 刚开始准备纯模拟,而后在题解看到一维压缩,才发现其实是将矩阵按行展开后进行k次右移操作。 转换成一维后,难点就在转换坐标:行号 = idx / 列数;列号 = idx % 列数; ......
leetcode 1260

[LeetCode][279]perfect-squares

# Content Given an integer n, return the least number of perfect square numbers that sum to n. A perfect square is an integer that is the square of an ......
perfect-squares LeetCode perfect squares 279

CF1335E1 Three Blocks Palindrome (easy version)

## 思路 发现一个进阶回文序列仅包含三个部分:$x$ 个连续的 $a$,$y$ 个连续的 $b$,$x$ 个连续的 $a$。 对于一个 $a$,我们一定会取最外面的两个 $a$,如果不取,则答案一定不小或不变,所以我们枚举到 $a$ 的时候,一定是确定了最外围的两个 $a$ 的位置。 接下来再枚举 ......
Palindrome version Blocks 1335E Three

leetcode236求最近公共祖先

递归 TreeNode* dfs(TreeNode* root,TreeNode* p,TreeNode* q){ if(!root)return root;//当发现这个节点已经是叶节点时,要告诉上层 if(root==p||root==q)return root;//当发现是p节点或者q时也要告 ......
祖先 leetcode 236