拓扑 前缀 线性leetcode

[LeetCode] 2300. Successful Pairs of Spells and Potions

You are given two positive integer arrays spells and potions, of length n and m respectively, where spells[i] represents the strength of the ith spell ......
Successful LeetCode Potions Spells Pairs

leetcode题中的逆向思维——集锦

417. 太平洋大西洋水流问题 虽然题目要求的是满足向下流能到达两个大洋的位置,如果我们对所有的位置进行搜索,那么在不剪枝的情况下复杂度会很高。因此我们可以反过来想,从两个大洋开始向上流,这样我们只需要对矩形四条边进行搜索。搜索完成后,只需遍历一遍矩阵,满足条件的位置即为两个大洋向上流都能到达的位置 ......
集锦 leetcode 思维

寒假每日一题——桶列表(前缀和)

桶列表 问题描述 Farmer John 正在考虑改变他给奶牛分配牛奶桶的方式。 他希望使用尽量少的牛奶桶,请帮助他! Farmer John 有 N 头奶牛,编号为 1…N。 第 i 头奶牛需要从时刻 si 到时刻 ti 之间挤奶,并且挤奶过程中需要用到 bi 个桶。 多头奶牛可能在同一时刻都在挤 ......
前缀

leetcode 394.字符串解码 Java

394.字符串解码 给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格 ......
字符串 字符 leetcode Java 394

leetcode 739.每日的温度 Java

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

leetcode 20. 有效的括号 Java

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 每个右括号都有一个对应的相同类型的左括号。 示例 1: 输入:s = "()" 输出:true 示例 2: 输入 ......
括号 leetcode Java 20

Leetcode(剑指offer专项训练)——DP专项(6)

排序的数目 题目 给定一个由 不同 正整数组成的数组 nums ,和一个目标整数 target 。请从 nums 中找出并返回总和为 target 的元素组合的个数。数组中的数字可以在一次排列中出现任意次,但是顺序不同的序列被视作不同的组合。 题目数据保证答案符合 32 位整数范围。 链接 无效DF ......
专项 Leetcode offer

Leetcode(剑指offer专项训练)——DP专项(5)

最少的硬币数目 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 你可以认为每种硬币的数量是无限的。 链接 完全背包问题 思路:主要是要自己推出动态转移方程 $$ F(i)=min_{ ......
专项 Leetcode offer

【DP】LeetCode 64. 最小路径和

题目链接 64. 最小路径和 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 表示状态 假设到了右下角,考虑一下我们要存储的信息 走到最后坐标的最小步数 当前坐标的信息,用来判断是否走到了右下角 很容易联想到使用二维数组 dp[i][j ......
路径 LeetCode 64

【DP】LeetCode 70. 爬楼梯

题目链接 70. 爬楼梯 思路 分析动态规划题目的时候只需要考虑最后一个阶段,因为所有的阶段转化都是相同的,考虑最后一个阶段容易发现规律 表示状态 假设走到了最后一层台阶,考虑一下我们要存储的信息: 走到这最后一层台阶的方法数 当前台阶数,用于判断是否走到了最后一层台阶 这时候很容易想到使用一维数组 ......
楼梯 LeetCode 70

咬咬龟对前缀和的反对

在计算机科学中,前缀和(Prefix Sum)是一种常见的算法技术,用于高效地处理数组或序列中某一区间内元素的和。然而,在最近的一次直播中,国内知名主播咬咬龟表达了他对前缀和算法的反对意见,引发了广泛的讨论和争议。 咬咬龟指出,前缀和算法虽然在某些情况下可以提高算法效率,但其实际应用却存在三大问题。 ......
前缀

[LeetCode] 1338. Reduce Array Size to The Half 数组大小减半

You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array. Return the minimum ......
数组 LeetCode 大小 Reduce Array

F - 产生冠军(不使用拓扑排序)

题目描述 有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。 球赛的规则如下: 如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。 如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。 根据这个规则,无需循环较量, ......
拓扑 冠军

Leetcode(剑指offer专项训练)——DP专项(4)

加减的目标值 给定一个正整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 '+' 或 '-' ,然后串联起所有整数,可以构造一个 表达式 : 例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" ......
专项 Leetcode offer

代码随想录Day17-Leetcode110.平衡二叉树,257. 二叉树的所有路径,404.左叶子之和

110.平衡二叉树 题目链接:https://leetcode.cn/problems/balanced-binary-tree/ 一个显然但似乎不太高效的方法是: 通过递归获取左右子树高度,判断差; 然后递归判断左右结点; 那么一个显然的改进就是后序遍历 /** * Definition for ......
随想录 之和 随想 路径 Leetcode

LeetCode 85. Maximal Rectangle

class Solution { public: int method(vector<int> h)//求柱状图中最大的矩形 { int n=h.size(); vector<int> l=vector<int> (n),r=l; stack<int> st; //预处理l,r数组 for(int ......
Rectangle LeetCode Maximal 85

【LBLD】小而美的算法技巧:前缀和数组

【LBLD】小而美的算法技巧:前缀和数组 一维数组中的前缀和 class NumArray { private: vector<int> preSum; public: NumArray(vector<int>& nums) { preSum.push_back(0); for (int i = 1 ......
前缀 数组 算法 技巧 LBLD

leetcode876. 链表的中间结点

876. 链表的中间结点 方法一: 最简单的做法,先求出整个链表的长度,再求1/2处节点的位置。 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode( ......
结点 leetcode 876

深度学习——用简单的线性模型构建识别鸟与飞机模型

本文仅为深度学习的入门学习,故采用线性模型而非CNN处理图像数据集。 一、准备工作 1. 下载CIFAR-10数据集 这是一个$32\times32$像素的RGB图像集合,用于学习使用。 from torchvision import datasets data_path = "./data/" c ......
模型 飞机模型 线性 深度 飞机

Leetcode Practice --- 栈和队列

155. 最小栈 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。 void push(int val) 将元素val推入堆栈。 void pop() 删除堆栈顶部的元素。 int top() ......
队列 Leetcode Practice

leetcode-733-easy

Flood Fill An image is represented by an m x n integer grid image where image[i][j] represents the pixel value of the image. You are also given three ......
leetcode easy 733

leetcode-1005-easy

Maximize Sum Of Array After K Negations Given an integer array nums and an integer k, modify the array in the following way: choose an index i and rep ......
leetcode 1005 easy

leetcode-724-easy

Find Pivot Index Given an array of integers nums, calculate the pivot index of this array. The pivot index is the index where the sum of all the numbe ......
leetcode easy 724

leetcode-762-easy

Prime Number of Set Bits in Binary Representation Given two integers left and right, return the count of numbers in the inclusive range [left, right] ......
leetcode easy 762

leetcode-744-easy

Find Smallest Letter Greater Than Target You are given an array of characters letters that is sorted in non-decreasing order, and a character target. ......
leetcode easy 744

LeetCode 100 相同的树

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

LeetCode 94 二叉树的中序遍历

LeetCode | 94.二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 提示: ......
LeetCode 94

反转链表-leetcode92

给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 示例 1: 输入:head = [1,2,3,4,5], left = 2, right = 4 输出:[1,4 ......
leetcode 92

LeetCode 2367 算术三元组的数目

给你一个下标从 0 开始、严格递增 的整数数组 nums 和一个正整数 diff 。如果满足下述全部条件,则三元组 (i, j, k) 就是一个 算术三元组 : i < j < k , nums[j] - nums[i] == diff 且 nums[k] - nums[j] == diff 返回不 ......
算术 数目 LeetCode 2367

AAAI 2023 | 轻量级语义分割新范式: Head-Free 的线性 Transformer 结构

前言 现有的语义分割工作主要集中在设计有效的解-码器上,然而,一直以来都忽略了这其中的计算成本。本文提出了一种专门用于语义分割的 Head-Free 轻量级架构,称为 Adaptive Frequency Transformer (AFFormer) 。采用异构运算符(CNN 和 ViT)进行像素嵌 ......
轻量 轻量级 范式 语义 线性