目录前言10.正则表达式匹配36.有效的数独[纯正则]408.有效单词缩写459.重复的子字符串[纯正则]468.验证IP地址[纯正则]591.标签验证器[纯正则]722.删除注释[纯正则]890.查找和替换模式1023.驼峰式匹配1108.IP地址无效化[纯正则]1455.检查单词是否为句中其他单词的前缀2047.句子中的有效单词数[纯正则]2299.强密码检验器II[纯正则]前言正则这个东西隔几天不用就容易忘记,所以把刷LeetCode时候碰到的能用正则表达式解决的题目全都记在这里,供以后参考使用,这里面有的是直接写出正则表达式即可,或者说正则表达式是写死了的,我标为“纯正则”,有的则需要
代码随想录算法训练营第二天|LeetCode977有序数组的平方、LeetCode209长度最小的子数组、LeetCode59螺旋矩阵II、数组总结时长:大约3~4小时977.SquaresofaSortedArrayGivenanintegerarraynumssortedinnon-decreasingorder,returnanarrayofthesquaresofeachnumbersortedinnon-decreasingorder.Example1:Example2:Constraints:1104-1044numsissortedinnon-decreasingorder.Fo
💛前情提要💛本章节是数据结构的栈和队列的相关面试题目讲解~以下的内容一定会让你对栈和队列相关知识的题目,有一个颠覆性的认识哦!!!❗以下内容以C语言的方式实现❗以下内容干货满满,跟上步伐吧~作者介绍:🎓作者:热爱编程不起眼的小人物🐐🔎作者的Gitee:代码仓库📌系列文章&专栏推荐:《刷题特辑》、《C语言学习专栏》、《数据结构_初阶》📒我和大家一样都是初次踏入这个美妙的“元”宇宙🌏希望在输出知识的同时,也能与大家共同进步、无限进步🌟🌐为大家推荐一款刷题网站呀👉点击跳转以下题目&算法思想,都可以从此网站中找到并参考学习哟~📌导航小助手📌👉前情提要📒面试真题【全面深度解析】🏷️有效的括号【难度:简单
👦个人主页:@Weraphael✍🏻作者简介:目前学习C++和算法✈️专栏:Leetcode+面试/笔试🐋希望大家多多支持,咱一起进步!😁如果文章对你有帮助的话欢迎评论💬点赞👍🏻收藏📂加关注目录一、移除链表元素1.1题目描述1.2思路一1.3思路一代码实现1.4思路二--尾插1.5思路二代码实现二、翻转单链表2.1题目描述2.2思路一--三指针2.3思路一代码实现2.4思路二--头插2.5思路二代码实现三、链表的中间结点3.1题目描述3.2思路3.3代码实现四、链表中倒数第k个结点4.1题目描述4.2思路4.3代码实现五、合并两个有序链表5.1题目描述5.2做法代码实现六、分割链表6.1题目描
学习参考回溯与递归相辅相成;回溯是递归的副产品,只要有递归就会有回溯。回溯函数也就是递归函数,指的都是一个函数。回溯搜索法纯暴力搜索解决的问题组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式(与组合差别,排列有元素顺序)棋盘问题:N皇后,解数独等等理解抽象的不易理解;抽象为图形结构--树形结构N叉树【树的宽度:集合的大小(for处理);深度:递归的深度(递归处理)】模板voidbacktracking(参数){if(终止条件){收集结果;return;}//
学习参考回溯与递归相辅相成;回溯是递归的副产品,只要有递归就会有回溯。回溯函数也就是递归函数,指的都是一个函数。回溯搜索法纯暴力搜索解决的问题组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式(与组合差别,排列有元素顺序)棋盘问题:N皇后,解数独等等理解抽象的不易理解;抽象为图形结构--树形结构N叉树【树的宽度:集合的大小(for处理);深度:递归的深度(递归处理)】模板voidbacktracking(参数){if(终止条件){收集结果;return;}//
404.左叶子之和给定二叉树的根节点root,返回所有左叶子之和。示例1:输入:root=[3,9,20,null,null,15,7]输出:24解释:在这个二叉树中,有两个左叶子,分别是9和15,所以返回24示例2:输入:root=[1]输出:0提示:节点数在[1,1000]范围内-1000思路:DFS因为我们求的是左叶子节点之和,所以我们要先判断哪个是左叶子节点;题目中的示例2表明只有根节点,虽然也是叶子节点,但不算左叶子节点;所以左叶子节点的条件就是在根节点root节点左边,且是叶子节点,这样我们就能判断左叶子节点了只需要取出左叶子节点的val值,累加即可;如果不是左叶子节点,则向下递归
目录1.数组题目合集1.1leetcode.27移除元素1.2leetcode.26删除有序数组中的重复项1.3leetcode.88合并两个有数数组2.链表题目合集2.1leetcode.203移除链表元素2.2leetcode.206反转链表2.3leetcode.876链表的中间结点2.4牛客链表中倒数第k个结点2.5leetcode.21合并两个有序链表2.6leetcode.相交链表2.7leetcode.141环形链表2.8 leetcode.142环形链表Ⅱ2.9 复制带随机指针的链表1.数组题目合集1.1leetcode.27移除元素OJ链接:移除元素(点此可跳转)解题思路:
🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123关于动态规划:LeetCode:322.零钱兑换——动态规划从案例入门一、🌱121.买卖股票的最佳时机题目描述:给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。来源:力扣(LeetCode)难度:简单提示:10示例1:输入:[7,1,5,3,6,4]输出:5解释:在第2天(股票价格=1)的时候买入,在
目录做题思路代码实现1.找到链表的中间节点2.反转中间节点之后的链表3.判断倒置的后半部分的链表是否等于前半部分的链表整体代码展示总结:这里是题目链接。234.回文链表-力扣(Leetcode) 这道题目的意思是:判断该链表中后半部分倒置是否跟前半部分相同,如果相同就返回true,否则就返回false。做题思路1.先用快慢指针来找到该链表的中间节点。2.倒置后半部分的链表。3.判断倒置的部分是否跟前半部分相同。代码实现1.找到链表的中间节点使用一个慢指针slow,一次走一步,一个快指针fast,一次走两步。当快指针fast为null或者走到尾节点时,slow所在的节点就是该链表的中间节点。/*