leetcode colorful minimum 1578

[刷题记录Day 25]Leetcode组合之回溯算法

No.1 题目 组合总和 III 思路 回溯法 递归分析 全局变量:path存储临时路径、result存储结果 返回值:空,参数:k,n,start表示从[1, 9]之间哪个数开始 终止条件:发现凑够k个数,判断值等于n,就放入结果集 单层递归逻辑:处理当前节点,递归,回溯 代码 List<List ......
算法 Leetcode Day 25

leetcode - 对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false 解法思路 也是递归的思想 检查当前两个节点是否为null,是,则说明 ......
leetcode

leetcode - 相同的树

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p = [1,2,3], q = [1,2,3] 输出:true 示例 2: 输入:p = [1,2], q = [1,null,2] 输 ......
leetcode

leetcode - 中序遍历

给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 中序遍历定义 先处理左子节点,再处理当前节点,再处理 ......
leetcode

LeetCode155:最小栈,最简单的中等难度题,时间击败100%,内存也低于官方

官方代码是直接使用JDK的Deque对象,这样的代码能学到什么?熟练操作API吗?还是自己实现一个最小栈吧,用时击败100%,内存击败78% ......
LeetCode 难度 内存 时间 官方

图解 LeetCode 算法汇总——回溯

本文首发公众号:小码A梦 回溯算法是一种常见的算法,常见用于解决排列组合、排列问题、搜索问题等算法,在一个搜索空间中寻找所有的可能的解。通过向分支不断尝试获取所有的解,然后找到合适的解,找完一个分支后再往回搜索。回溯算法通常使用递归的方式实现。 回溯本质是一种暴力搜索法,列出所有可能的解,然后找到合 ......
算法 LeetCode

LeetCode/将石头分散到网格的最少移动次数

给你一个大小为 3 * 3 ,下标从 0 开始的二维整数矩阵 grid ,分别表示每一个格子里石头的数目。 网格图中总共恰好有 9 个石头,一个格子里可能会有多个石头。 每一次操作中,你可以将一个石头从它当前所在格子移动到一个至少有一条公共边的相邻格子。 请你返回每个格子恰好有一个石头的最少移动次数 ......
网格 LeetCode 石头 次数

LeetCode279:完全平方数——动态规划算法一定是最优算法吗???

无意间看到了这么一个题: LeetCode279:完全平方数,动态规划解法超过46%,作弊解法却超过97% 看到这个题后我的第一个想法是这个动态规划算法一定是这道题最优解法吗? ......
算法 LeetCode 动态 279

[ABC319D] Minimum Width 题解

[ABC319D] Minimum Width 题解 题意分析 给定 \(n\) 个单词,现在想像“记事本”一样把它们依次地一行一行显示出来。每个字母宽度为一,单词之间需要有空格,宽度也为一。一个单词不可以成两部分显示在两行。如果单词最后一个字母来到行末,直接换行,不用空格。 给定窗口最大高度 \( ......
题解 Minimum Width 319D ABC

Leetcode刷题本地debug框架搭建

思路 1. 初版 cmake + 单一.cpp文件 参考:https://blog.songjiahao.com/archives/362 2. 改良版 cmake + 源文件、头文件(含List、Tree等数据结构)分离 + gtest 参考:https://github.com/Pokerpok ......
框架 Leetcode debug

[题解} CF1217D Coloring Edges

CF1217D Coloring Edges 知识点: dfs 树。 题意 给定一张有向图,现在要求为图上所有的边进行染色,使得颜色种类最少的同时,同种颜色的边无法构成环,输出最少需要的颜色种类和任意一种染色可行方案。 思路 假设该有向图中不存在环,那么我们可以直接对所有的边染为同一种颜色。因此可以 ......
题解 Coloring 1217D Edges 1217

LeetCode刷题笔记

算法 1.差分数组+前缀和 1589. 所有排列中的最大和 - 力扣(LeetCode) 对于每一次遍历都有m个数需要加1,如果对这些数遍历,则需要O(m)复杂度,此时可以记录这m个数的差分数组: ​ 这样就可以把时间复杂度缩小到O(1),之后求前缀和就可以得到原来的数组。 2.线性筛(欧拉筛)求素 ......
LeetCode 笔记

LeetCode279:完全平方数,动态规划解法超过46%,作弊解法却超过97%

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇概览 这是道高频面试题,值得一看 首先,这道题的难度是中等 来看题目描述: 给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 ......
解法 LeetCode 动态 279 46%

算法训练day4: LeetCode 24

算法训练day4: LeetCode 24.19.142.面试题07.02 24.两两交换链表中的结点 题目 题目24. 两两交换链表中的节点 - 力扣(LeetCode) 题解 讲解代码随想录 (programmercarl.com) 第一想法:模拟的方法,使用三个指针,将结点两两交换。 clas ......
算法 LeetCode day4 day 24

[刷题记录Day 23]Leetcode二叉树

No.1 题目 修剪二叉搜索树 思路 递归法 有点抽象,要对具体案例做模拟才好懂 递归分析 返回值:节点,参数:节点,[下界,上界] 终止条件:遇到空节点,返回空 单层递归逻辑:判断不在范围内的情况:当前节点小于下界/大于上界,直接返回右/左子树递归结果;若在范围内,则递归筛查左右子树,返回当前节点 ......
Leetcode Day 23

LeetCode207——课程表

你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 b ......
课程表 LeetCode 课程 207

LeetCode297:hard级别中最简单的存在,java版,用时击败98%,内存击败百分之九十九

LeetCode的hard题都很难吗?不一定,297就非常简单,随本文一起,用最基础的知识写代码,执行用时能击败98.46%,与此同时,内存消耗击败99.73% ......
百分 LeetCode 级别 内存 hard

LeetCode -- 207. 课程表 (拓扑排序)

经典拓扑排序的应用,用拓扑排序的算法看看原图中是否有一个合法的拓扑序。 class Solution { public: const static int N = 2010, M = 5010; int h[N], e[M], ne[M], idx; int d[N], q[N]; void add ......
课程表 拓扑 LeetCode 课程 207

图解 LeetCode 算法汇总——链表

> 本文首发公众号:小码A梦 一般数据主要存储的形式主要有两种,一种是数组,一种是链表。数组是用来存储固定大小的同类型元素,存储在内存中是**一片连续**的空间。而链表就不同于数组。链表中的元素不是存储在内存中**可以是不连续的空间**。 ![](https://files.mdnice.com/u ......
算法 LeetCode

算法训练 Leetcode 203、206、707

# 算法训练 Leetcode 203、206、707 ## 203.移除链表元素 以为头结点是空的,里面只存着下一个结点的地址。 注意空指针检查:p!=NULL; ~~~c++ class Solution { public: ListNode *removeElements(ListNode * ......
算法 Leetcode 203 206 707

第四章 表达式 <font color = red></font>

###4.1 基础 * #####运算对象转换 类型转换大多数都合乎情理,但是小整数类型(如bool,char,short等)通常会被提升成较大的整数类型,主要是int。 * #####重载运算符 当运算符作用于类类型的运算对象时,用户可以自行定义其含义。因为这种自定义的过程事实上是为了已存在的运算 ......
表达式 font color lt gt

题解 CF1787G【Colorful Tree Again】

## problem 贼眉鼠眼有一棵 $N$ 个节点的树,这棵树很特殊,每条边都有边权和颜色。 果宝特攻会不定时来进攻贼眉鼠眼。具体地,在前 $Q$ 个时刻,在每个时刻,会发生以下两个事件之一: 1. 果宝特攻摧毁了树上的一个节点 $u$。 1. 贼眉鼠眼修复了树上的一个节点 $u$。 定义一条简单 ......
题解 Colorful 1787G Again 1787

CF1857C Assembly via Minimums

`2023-08-08 22:58:04 solution` ## 思路: 考虑到一个最小值对答案的贡献,发现如果是序列最小值,因为配对了 $n-1$ 次,而每次配对的结果都是它,所以在 $b$ 中会出现 $n-1$ 次。 同理,次小值(可能与最小值相同)出现 $n-2$ 次,第三小出现 $n-3$ ......
Assembly Minimums 1857C 1857 via

学习使用双指针(leetcode)

一、K 和数对的最大数目(JAVA) 给你一个整数数组 `nums` 和一个整数 `k` 。 每一步操作中,你需要从数组中选出和为 `k` 的两个整数,并将它们移出数组。 返回你可以对数组执行的最大操作数。 * **示例 1:** * 输入:nums = [1,2,3,4], k = 5 * 输出: ......
指针 leetcode

LeetCode739——每日温度

给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用 0 来代替。 示例 1: 输入: temperatures = [73,74,75,71,6 ......
LeetCode 温度 739

LeetCode买卖股票之一:基本套路(122)

### 欢迎访问我的GitHub > 这里分类和汇总了欣宸的全部原创(含配套源码):[https://github.com/zq2599/blog_demos](https://github.com/zq2599/blog_demos) ### 关于《LeetCode买卖股票》系列 - 在LeetC ......
套路 LeetCode 股票 122

[LeetCode] 1383. Maximum Performance of a Team

You are given two integers n and k and two integer arrays speed and efficiency both of length n. There are n engineers numbered from 1 to n. speed[i]  ......
Performance LeetCode Maximum 1383 Team

[LeetCode] 2594. Minimum Time to Repair Cars

You are given an integer array ranks representing the ranks of some mechanics. ranksi is the rank of the ith mechanic. A mechanic with a rank r can re ......
LeetCode Minimum Repair 2594 Cars

leetcode杂记

C++中的 nullptr :https://zhuanlan.zhihu.com/p/257421030C语言中常用的是NULL,但是一旦涉及类型转换就会有风险,我们没有办法在不显示声明指针类型的情况下定义一个空指针,所以用nullptrC++中的 class solution :https:// ......
杂记 leetcode

Leetcode - 滑动窗口专项小结

# 模板代码 ![image](https://img2023.cnblogs.com/blog/2753616/202309/2753616-20230906193334026-2104852955.png) # 题目练习 ## 76 最小覆盖子串 给你一个字符串 s 、一个字符串 t 。返回 s ......
小结 专项 Leetcode