草庐IT

Leetcode6

全部标签

LeetCode 831. Masking Personal Information【字符串,正则表达式】中等

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。为了方便在PC上运行调试、分享代码文件,我还建立了相关的仓库。在这一仓库中,你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等,还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解,还可

leetcode - 2948. Make Lexicographically Smallest Array by Swapping Elements

DescriptionYouaregivena0-indexedarrayofpositiveintegersnumsandapositiveintegerlimit.Inoneoperation,youcanchooseanytwoindicesiandjandswapnums[i]andnums[j]if|nums[i]-nums[j]|Returnthelexicographicallysmallestarraythatcanbeobtainedbyperformingtheoperationanynumberoftimes.Anarrayaislexicographicallysmal

leetcode647 回文子串

题目给你一个字符串s,请你统计并返回这个字符串中回文子串的数目。回文字符串是正着读和倒过来读一样的字符串。子字符串是字符串中的由连续字符组成的一个序列。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。示例输入:s=“abc”输出:3解释:三个回文子串:“a”,“b”,“c”解析这道题还是用动归五部曲来分析下:1.确定dp数组及其含义对于大多数求子序列类的题目来说,求什么我们就定义什么,比如求回文子串的数目我们就定义成这个,但是对于这道题来说,dp[i]和dp[i-1],dp[i+1]看上去都没啥关系;因此这道题,要定义dp[i][j]:表示区间范围[i,j](注

【LeetCode热题100】--74.搜索二维矩阵

74.搜索二维矩阵按行搜索,使用二分查找classSolution{publicbooleansearchMatrix(int[][]matrix,inttarget){for(int[]row:matrix){intindex=search(row,target);if(index>=0){returntrue;}}returnfalse;}publicintsearch(int[]nums,inttarget){intlow=0,high=nums.length-1;while(lowhigh){intmid=(low+high)/2;if(nums[mid]==target){retur

LeetCode | 622. 设计循环队列

LeetCode|622.设计循环队列OJ链接思路:我们这里有一个思路:插入数据,bank往后走删除数据,front往前走再插入数据,就循环了那上面这个方法可行吗?怎么判断满,怎么判断空?这样是不是比较难我们下面有一个好的方法,就是多开一个空间下面是我们的结构体的定义typedefstruct{int*a;intfront;intback;intk;}MyCircularQueue;初始化这里的初始化就是给a空间开了k+1个大小MyCircularQueue*myCircularQueueCreate(intk){MyCircularQueue*obj=(MyCircularQueue*)ma

LeetCode 240. 搜索二维矩阵 II

原题链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台题面:编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],

Leetcode 542. 01 矩阵

542.01矩阵-中等问题描述给定一个由0和1组成的矩阵mat,请输出一个大小相同的矩阵,其中每一个格子是mat中对应位置元素到最近的0的距离。两个相邻元素间的距离为1。示例1:输入:mat=[[0,0,0],[0,1,0],[0,0,0]]输出:[[0,0,0],[0,1,0],[0,0,0]]示例2:输入:mat=[[0,0,0],[0,1,0],[1,1,1]]输出:[[0,0,0],[0,1,0],[1,2,1]]提示:m==mat.lengthn==mat[i].length11mat[i][j]iseither0or1.mat中至少有一个0解题思路与代码实现一采用BFS搜索解题:创

LeetCode每日一题——2520. Count the Digits That Divide a Number

文章目录一、题目二、题解一、题目2520.CounttheDigitsThatDivideaNumberGivenanintegernum,returnthenumberofdigitsinnumthatdividenum.Anintegervaldividesnumsifnums%val==0.Example1:Input:num=7Output:1Explanation:7dividesitself,hencetheansweris1.Example2:Input:num=121Output:2Explanation:121isdivisibleby1,butnot2.Since1occu

【LeetCode股票买卖系列:309. 最佳买卖股票时机含冷冻期 | 暴力递归=>记忆化搜索=>动态规划】

🚀算法题🚀🌲算法刷题专栏|面试必备算法|面试高频算法🍀🌲越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨🌲作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎🌲恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻🌲人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯🚀算法题🚀🍔目录🚗知识回顾🚩题目链接⛲题目描述🌟求解思路&实现代码&运行结果⚡暴力法🥦求解思路🥦实现代码🥦运行结果⚡记忆化搜索🥦求解思路🥦实现代码🥦运行结果⚡动态规划🥦求解思路🥦实现代码🥦运行结果💬共勉🚗知

【LeetCode】67. 二进制求和

67.二进制求和难度:简单题目给你两个二进制字符串a和b,以二进制字符串的形式返回它们的和。示例1:输入:a="11",b="1"输出:"100"示例2:输入:a="1010",b="1011"输出:"10101"提示:1a和b仅由字符'0'或'1'组成字符串如果不是"0",就不含前导零个人题解思路:从后往前遍历字符逐个判断即可最后考虑是否进位sum&1等价于sum%2classSolution{publicStringaddBinary(Stringa,Stringb){StringBuilderans=newStringBuilder();intca=0;for(inti=a.length