括号leetcode dfs

leetcode 平衡二叉树

给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:true 示例 2: 输入:root = [1,2,2,3,3, ......
leetcode

AtCoder Beginner Contest 126 D (图论、LCA性质、DFS、思维、*1200)

D - Even Relation 给你一棵树 (结点个数为 $ n(n \le 10^5) $, 现在需要将树上所有结点染成白色或黑色, 打印一种可行的方案(将 $ i $ 号点染成白色则输出 0, 否则, 输出 1), 满足:同一种颜色的点之间的距离是偶数。 思路: ......
Beginner 性质 思维 AtCoder Contest

多叉树应用 包括构建 dfs遍历

力扣17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be ......
dfs

python 正则表达式之 怎么匹配一对中括号 [ ]

在正则表达式中,前中括号 [ 属于特殊字符,要匹配它,需要转义, 那就加上转义字符\ 来进行转义,即加上\ res = re.findall(r"\[[\dA-Z]*]", 'AAAA[CEBT905A1B6A] / #')print(res) ['[CEBT905A1B6A]']Note: 被用作 ......
正则 表达式 python

有关dfs序求lca的相关问题及常见问题

本文主要是用于警示自己避免犯错。 参考代码 dfs 序求 lca 的参考代码如下。 #include<bits/stdc++.h> using namespace std; const int MAXN=5e5+10,MAXLOG2N=20; int N,M,S,cnt,head[MAXN],dfn ......
问题 常见问题 常见 dfs lca

[LeetCode] 1222. Queens That Can Attack the King

On a 0-indexed 8 x 8 chessboard, there can be multiple black queens ad one white king. You are given a 2D integer array queens where queens[i] = [xQue ......
LeetCode Attack Queens 1222 King

[LeetCode] 2596. Check Knight Tour Configuration

There is a knight on an n x n chessboard. In a valid configuration, the knight starts at the top-left cell of the board and visits every cell on the b ......
Configuration LeetCode Knight Check 2596

LeetCode-Java题解 209. Minimum Size Subarray Sum

题目地址:209. Minimum Size Subarray Sum 解题思路: 看到这道题,心里本身是有双指针这个概念的,但是不知道怎么用,脑子里第一反应就是暴力解法,双for一把梭,然后时间就超时了...看了题解才知道滑动窗口这个解法,不禁直呼妙啊!感觉和双指针非常类似,其核心点在于避免了暴力 ......

leetcode1466

分析: 它是有n个节点,n-1条边 所以两个节点连接的边只有一条,那么要么是可以从这条边的起点开始能够到达0,要么是不能,不会有回路的情况 对于数据结构使用哈希表值为vector容器 int bfs(vector<vector<int>>& connections){ unordered_map<i ......
leetcode 1466

【Leetcode】解题报告Day3~Day4

解题报告 Day3 1. 66. 加一 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入:digits = [1,2,3] 输出:[1,2, ......
Day Leetcode 报告 Day3 Day4

leetcode 将有序数组转换为二叉搜索树

给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 示例 1: 输入:nums = [-10,-3,0,5,9] 输出:[0,-3,9,-10,null,5] ......
数组 leetcode

print()不带逗号、括号输出列表内容(不使用遍历)

假设有一个列表 li=[1,4,6,7,2,5] 1、直接输出列表 print(li) [1, 4, 6, 7, 2, 5] 2、增加*可以不带逗号、括号输出列表元素 print(*li) 1 4 6 7 2 5 3、还可以自定义每个元素之间的间隔符 print(*li,sep='#') 1#4#6 ......
括号 逗号 内容 print

DFS

DFS 261. 树状结构查询 import java.util.Scanner; import java.util.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { static Map<String, Set<String> ......
DFS

[LeetCode] 1352. Product of the Last K Numbers 最后 K 个数的乘积

Design an algorithm that accepts a stream of integers and retrieves the product of the last k integers of the stream. Implement the ProductOfNumbers c ......
乘积 个数 LeetCode Product Numbers

【dfs基础题】洛谷P1219题解

题目大意 给定棋盘的规格为 \(n×n\),现在要摆 \(n\) 个皇后,使得每个皇后不能互相攻击。 题目解答 由题意可知,如果两个皇后在同一行或同一列或同一对角线,那么就会互相攻击。 那么就简单了,若当前要摆的是第 \(i\) 个皇后,那么只需要 for 循环一遍前面的 \(i-1\) 个皇后,判 ......
题解 基础 P1219 1219 dfs

Leetcode 1193. 每月交易Ⅰ

1193. 每月交易Ⅰ 题目 表:Transactions + + + | Column Name | Type | + + + | id | int | | country | varchar | | state | enum | | amount | int | | trans_date | d ......
Leetcode 1193

[LeetCode] 85. Maximal Rectangle_Hard tag: Dynamic Programming

Given a rows x cols binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's and return its area. Example 1: Input: matri ......

leetcode 二叉树的最大深度

给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:3 示例 2: 输入:root = [1,null,2] 输出:2 解题思路 这里可以转化思路为 ......
深度 leetcode

Leetcode(Hash)

1.the sum of two nums 1.1Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. 1.2 ......
Leetcode Hash

Leetcode 27. 移除元素

题目描述 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 双指针 Python 实现 ......
Leetcode 元素 27

leetcode547省份数量

深度优先搜索 vector<bool>vis; int num=0; void dfs(vector<vector<int>>& isConnected,int x){ vis[x]=true; for(int i=0;i<isConnected[x].size();i++){ if(!vis[i] ......
省份 leetcode 数量 547

LeetCode -- 1462. 课程表 IV (拓扑排序,二进制集合)

本题我们要快速的判断一个点在拓扑序中是不是另一个点的前驱,先求出拓扑序,在利用二进制代表集合来进行前驱的判断。 class Solution { public: const static int N = 110, M = N * N; int h[N], e[M], ne[M], idx; int ......
课程表 拓扑 二进制 LeetCode 课程

算法训练day7 LeetCode454

算法训练day7: LeetCode454.383.15.18 454.四数相加 题目 454. 四数相加 II - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { public: int fourSumCount(vector ......
算法 LeetCode day7 day 454

【Leetcode】解题报告Day1~Day2

解题报告 Day1 1. 2235.两数之和 给你两个整数 num1 和 num2,返回这两个整数的和。 示例 1: 输入:num1 = 12, num2 = 5 输出:17 解释:num1 是 12,num2 是 5 ,它们的和是 12 + 5 = 17 ,因此返回 17 。 示例 2: 输入:n ......
Day Leetcode 报告 Day1 Day2

LeetCode 1934.确认率

1934.确认率 1.问题关键精炼: 确认率是confirmed消息的数量除以请求的确认消息的总数。 没有请求任何确认消息的用户的确认率为0。 确认率四舍五入到小数点后两位 2.难点解析: 我觉得这道题是考察AVG函数的使用。 根据需求可以看出,答案也就是一个公式:confirmed消息的数量 / ......
LeetCode 1934

leetcode841钥匙和房间

使用深度优先遍历构造的图,只要访问过就标记已访问 int num=0; vector<bool>vis; void dfs(vector<vector<int>>& rooms,int x){ vis[x]=true; num++; for(auto& v:rooms[x]){ if(!vis[v] ......
leetcode 钥匙 房间 841

leetcode450删除搜索二叉树的节点

删除的二叉树节点分4种情况: 叶子节点,直接删除就行 左节点不为空,右节点为空;直接将左子树返回 左节点为空,右节点不为空;直接将右子树返回 左节点和右节点不为空;将右子树最小的节点作为根节点,返回右子树 TreeNode* deleteNode(TreeNode* root, int key) { ......
节点 leetcode 450

Leetcode 26. 删除有序数组中的重复项

题目描述 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 双指针 Python 实现 def removeDuplicates(nums: List[ ......
数组 Leetcode 26

LeetCode287——寻找重复数

给定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。 假设 nums 只有 一个重复的整数 ,返回 这个重复的数 。 你设计的解决方案必须 不修改 数组 nums 且只用常量级 O(1) 的额外空间。 示例 1: 输入 ......
LeetCode 287

LeetCode523——连续的子数组和

给你一个整数数组 nums 和一个整数 k ,编写一个函数来判断该数组是否含有同时满足下述条件的连续子数组: 子数组大小 至少为 2 ,且 子数组元素总和为 k 的倍数。 如果存在,返回 true ;否则,返回 false 。 如果存在一个整数 n ,令整数 x 符合 x = n * k ,则称 x ......
数组 LeetCode 523