草庐IT

LeetCode_day

全部标签

Leetcode—1572.矩阵对角线元素的和【简单】

2023每日刷题(七十三)Leetcode—1572.矩阵对角线元素的和实现代码classSolution{public:intdiagonalSum(vectorvectorint>>&mat){intn=mat.size();if(n==1){returnmat[0][0];}intsum=0;inti=0,j=n-1;while(in){sum+=mat[i][i]+mat[i][j];i++;j--;}if(n%2){sum-=mat[n/2][n/2];}returnsum;}};运行结果之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次

day55 算法训练|动态规划part15

392.判断子序列给定字符串s和t,判断s是否为t的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。其实就是最长公共子序列的变种题:如果公共子序列长度等于s,那么返回truepublicbooleanisSubsequence(Strings,Stringt){intlength1=s.length();intlength2=t.length();int[][]dp=newint[length1+1][length2+1];for(inti=1;i还可以用双指针,效率其

LeetCode74二分搜索优化:二维矩阵中的高效查找策略

题目描述力扣地址给你一个满足下述两条属性的 mxn 整数矩阵:每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。示例1:输入:matrix=[[1,3,5,7],[10,11,16,20],[23,30,34,60]],target=3输出:true示例2:输入:matrix=[[1,3,5,7],[10,11,16,20],[23,30,34,60]],target=13输出:false提示:m==matrix.lengthn==matrix[i].len

【LeetCode刷题笔记(8-1)】【Python】【接雨水】【动态规划】【困难】

文章目录引言接雨水题目描述提示解决方案1:【动态规划】结束语【接雨水】【LeetCode刷题笔记(8-2)】【Python】【接雨水】【单调栈】【困难】【LeetCode刷题笔记(8-3)】【Python】【接雨水】【双指针】【困难】引言编写通过所有测试案例的代码并不简单,通常需要深思熟虑和理性分析。虽然这些代码能够通过所有的测试案例,但如果不了解代码背后的思考过程,那么这些代码可能并不容易被理解和接受。我编写刷题笔记的初衷,是希望能够与读者们分享一个完整的代码是如何在逐步的理性思考下形成的。我非常欢迎读者的批评和指正,因为我知道我的观点可能并不完全正确,您的反馈将帮助我不断进步。如果我的笔记

LeetCode994腐烂的橘子(相关话题:矩阵dfs和bfs)

题目描述在给定的 mxn 网格 grid 中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,腐烂的橘子 周围 4个方向上相邻 的新鲜橘子都会腐烂。返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1 。示例1:输入:grid=[[2,1,1],[1,1,0],[0,1,1]]输出:4示例2:输入:grid=[[2,1,1],[0,1,1],[1,0,1]]输出:-1解释:左下角的橘子(第2行,第0列)永远不会腐烂,因为腐烂只会发生在4个正向上。示例3:输入:grid=[[0,2]]输出:0解释:因为0分钟

【Leetcode 36】有效数独 —— 哈希表|矩阵

36.有效数独请你判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)注意:一个有效的数独(部分已被填充)不一定是可解的需要根据以上规则,验证已经填入的数字是否有效即可空白格用‘.’表示。示例1:输入:board=[[“5”,“3”,“.”,“.”,“7”,“.”,“.”,“.”,“.”],[“6”,“.”,“.”,“1”,“9”,“5”,“.”,“.”,“.”],[“.”,“9”,“8”,“.”,“.”,“.”,“.”,“6”,

《LeetCode力扣练习》代码随想录——栈与队列(前 K 个高频元素---Java)

《LeetCode力扣练习》代码随想录——栈与队列(前K个高频元素—Java)刷题思路来源于代码随想录347.前K个高频元素堆classSolution{publicint[]topKFrequent(int[]nums,intk){if(nums.length==1){returnnums;}MapInteger,Integer>map=newHashMap>();for(intnum:nums){map.put(num,(map.getOrDefault(num,0)+1));}PriorityQueueint[]>heap=newPriorityQueue>((o1,o2)->o1[1]

【排序算法】【二叉树】【滑动窗口】LeetCode220: 存在重复元素 III

作者推荐【二叉树】【单调双向队列】LeetCode239:滑动窗口最大值本文涉及的基础知识点C++算法:滑动窗口总结题目给你一个整数数组nums和两个整数indexDiff和valueDiff。找出满足下述条件的下标对(i,j):i!=j,abs(i-j)abs(nums[i]-nums[j])如果存在,返回true;否则,返回false。示例1:输入:nums=[1,2,3,1],indexDiff=3,valueDiff=0输出:true解释:可以找出(i,j)=(0,3)。满足下述3个条件:i!=j-->0!=3abs(i-j)abs(0-3)abs(nums[i]-nums[j])ab

HarmonyOS自学-Day4(TodoList案例)

目录文章声明⭐⭐⭐让我们开始今天的学习吧!TodoList小案例继续加功能文章声明⭐⭐⭐该文章为我(有编程语言基础,非编程小白)的HarmonyOS自学笔记,此类文章笔记我会默认大家都学过前端相关的知识知识来源为HarmonyOS官方文档,归纳为自己的语言与理解记录于此不出意外的话,我大抵会持续更新想要了解前端开发(技术栈大致有:Vue2/3、微信小程序、uniapp、HarmonyOS、NodeJS、Typescript)与Python的小伙伴,可以关注我!谢谢大家!让我们开始今天的学习吧!TodoList小案例效果图如下:代码如下:@Entry@ComponentstructIndex{@

【1day】​万户协同办公平台 iSignatureHTML.jsp/DocumentEdit.jsp 文件SQL注入漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。目录一、漏洞描述二、影响版本三、资产测绘 四、漏洞复现