leetcode minimum repair 2594

LeetCode53.最大子数组和

要求最大连续子数组的和,可以这样考虑,比如现在我想求下标 i~j,i<j 这一范围内子数组的和,那么我可以分别先求出 0~i-1 范围和 0~j 范围两个子数组的和,可得Sum[i~j]=Sum[0~j]-Sum[0~i-1] ,这就是本题解法的核心思想。 解法详细描述:先从下标0开始,遍历 num ......
数组 LeetCode 53

leetcode 22 括号生成

数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例 1: 输入:n = 3 输出:["((()))","(()())","(())()","()(())","()()()"] 示例 2: 输入:n = 1 输出:["()"] 提示: 1 <= n < ......
括号 leetcode 22

图解 LeetCode 算法汇总——二分查找

二分查找(Binary Search)是一种在有序数组中查找特定元素的高效算法。它的基本思想是将目标值与数组中间的元素进行比较,如果目标值小于中间元素,则在数组的左半部分继续查找,否则在右半部分查找,不断缩小搜索范围,直到找到目标值或确定目标值不存在为止。 二分查找也叫折半查找,比如在一个有序的数组 ......
算法 LeetCode

Leetcode刷题88. 合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 ......
数组 Leetcode 两个 88

算法训练day13 LeetCode 239

算法训练day13 LeetCode 239.滑动窗口最大值347.前k个高频元素 239.滑动窗口最大值 题目 239. 滑动窗口最大值 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { private: class MyQ ......
算法 LeetCode day 239 13

LeetCode 周赛上分之旅 #46 经典二分答案与质因数分解

⭐️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问。 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度也更复杂。在这个专栏里,小彭与你分享每场 LeetCode ......
质因数 LeetCode 答案 之旅 经典

Leetcode刷题1.两数之和

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums ......
之和 Leetcode

图解 LeetCode 算法汇总——双指针

双指针算法是一种比较常用于搜索链表或数组相关的问题,很多算法的基本的解题思路就是使用暴力搜索法。而双指针是对暴力搜索的一种优化,通过双指针可以减少数据的遍历次数。通常双指针是有两个指针,叫做 light 左指针和 right 右指针,或者叫做快指针和慢指针。 作为左右指针的话,一般是在数组的或者链表 ......
指针 算法 LeetCode

LeetCode 周赛上分之旅 #45 精妙的 O(lgn) 扫描算法与树上 DP 问题

⭐️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问。 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度也更复杂。在这个专栏里,小彭与你分享每场 LeetCode ......
算法 LeetCode 之旅 问题 lgn

算法训练day11 栈与队列 02 LeetCode20

算法训练day11 栈与队列 02 LeetCode20.1047.150 20.有效的括号: 题目: 20. 有效的括号 - 力扣(LeetCode) 题解: 代码随想录 (programmercarl.com) class Solution { public: bool isValid(stri ......
队列 算法 LeetCode day 11

Leetcode刷题70.爬楼梯

题目:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入:n = 3 输出:3 解释:有三种方法可以爬 ......
楼梯 Leetcode 70

leetcode71. 简化路径

class Solution: def simplifyPath(self, path: str) -> str: li=path.split("/") res=[] for i in li: if i=='..' and res: res.pop() if i!='.' and i!='..' a ......
路径 leetcode 71

算法训练day10 LeetCode 232

算法训练day10: LeetCode 232.225. 232.用栈实现队列 题目 232. 用栈实现队列 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class MyQueue { public: stack<int> stIn; stack<int ......
算法 LeetCode day 232 10

leetcode 加油站——一次遍历

class Solution: def canCompleteCircuit(self, gas: List[int], cost: List[int]) -> int: n=len(gas) max_gas=0 rest=0 records=[] start=0 for i in range(n) ......
加油站 leetcode

【LeetCode】删除数对后的最小数组长度

题目 给你一个下标从 0 开始的 非递减 整数数组 nums 。 你可以执行以下操作任意次: 选择 两个 下标 i 和 j ,满足 i < j 且 nums[i] < nums[j] 。 将 nums 中下标在 i 和 j 处的元素删除。剩余元素按照原来的顺序组成新的数组,下标也重新从 0 开始编号 ......
数组 长度 LeetCode

leetcode 二叉树的最小深度

给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明:叶子节点是指没有子节点的节点。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:2 示例 2: 输入:root = [2,null,3,null,4,null,5, ......
深度 leetcode

leetcode 平衡二叉树

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

[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

[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

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