草庐IT

Leetcode刷题第五周

全部标签

php - 如何在 PHP 中获取一个月的第一个、第三个和第五个星期六?

我已经找到了解决这个问题的方法,但在某些情况下会出错。以下是我的发现:此代码段用于打印2015年8月和2015年7月的第一个星期六:$sat=date("FY",strtotime("2015-08-01"));echo$fir_sat="$satfirstsaturday";echo"is".date('d',strtotime($fir_sat));$sat=date("FY",strtotime("2015-07-04"));echo$fir_sat="$satfirstsaturday";echo"is".date('d',strtotime($fir_sat));输出如下:A

LeetCode:150. 逆波兰表达式求值—栈

🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123一、🌱150.逆波兰表达式求值题目描述:给你一个字符串数组tokens,表示一个根据逆波兰表示法表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。来源:力扣(LeetCode)难度:简单提示:1tokens[i]是一个算符("+"、"-"、"*"或"/"),或是在范围[-200,200]内的一个整数注意:有效的算符为'+'、'-'、'*'和'/'。每个操作数(运算对象)都可以是一个整数或者另一个表达式。两个整数之间的除法总是向零截断。表达式中不含除零运算。输入是一个根据逆波兰表示法表示的算术表达式。答案及

《python语言程序设计基础》(第二版)第五章课后习题参考答案

第五章函数和代码的复用文章目录5.1改造练习题3.5,输出更大的田字格5.2实现isOdd函数5.3实现isNum函数5.4实现multi函数5.5实现isPrime函数5.6输出10种生日日期格式5.7汉诺塔5.1改造练习题3.5,输出更大的田字格deftian(n):a=7*n+1foriinrange(1,a+1):ifi%7==1:print("+——————"*n,end="")print("+")else:print("|"*n,end="")print("|")tian(4)5.2实现isOdd函数defisOdd(n):ifn%2!=0:returnTrueelse:retur

团灭LeetCode跳跃游戏(相关话题:贪心,BFS)

目录LeetCode55跳跃游戏LeetCode45. 跳跃游戏IILeetCode1306. 跳跃游戏IIILeetCode1345. 跳跃游戏IV解题总结

【动态规划】LeetCode 312. 戳气球 --区间DP问题

 Halo,这里是Ppeua。平时主要更新C语言,C++,数据结构算法......感兴趣就关注我吧!你定不会失望。🌈个人主页:主页链接🌈算法专栏:专栏链接     我会一直往里填充内容哒!🌈LeetCode专栏:专栏链接     目前在刷初级算法的LeetBook。若每日一题当中有力所能及的题目,也会当天做完发出🌈代码仓库:Gitee链接🌈点击关注=收获更多优质内容🌈目录题目:戳气球题解:代码实现:完结撒花因为一些事,最近状态不是很好,加上今天的每日一题有点难,看的烦躁(就是菜,就来更新一下今天与每日一题相关的区间Dp问题(戳气球),这篇也是关于区间Dp的问题uu可以看看 话不多说,开始! 题

LeetCode 1824. 最少侧跳次数

【LetMeFly】1824.最少侧跳次数力扣题目链接:https://leetcode.cn/problems/minimum-sideway-jumps/给你一个长度为 n 的 3跑道道路 ,它总共包含 n+1 个 点 ,编号为 0 到 n 。一只青蛙从 0 号点第二条跑道 出发 ,它想要跳到点 n 处。然而道路上可能有一些障碍。给你一个长度为n+1 的数组 obstacles ,其中 obstacles[i] (取值范围从0到3)表示在点i 处的 obstacles[i] 跑道上有一个障碍。如果 obstacles[i]==0 ,那么点 i 处没有障碍。任何一个点的三条跑道中 最多有一个

LeetCode:剑指 Offer 58 - II. 左旋转字符串

🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123一、🌱剑指Offer58-II.左旋转字符串题目描述:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。来源:力扣(LeetCode)难度:简单提示:1示例1:输入:s=“abcdefg”,k=2输出:“cdefgab”🌴解题1.直接使用字符串的substring就是直接截取前后子字符串拼接即可:classSolution{publicStringreverseLeft

算法刷题笔记

特定方法KMP算法:字符串匹配逆波兰表达式:计算值斐波那契数:动态规划强制类型转换:整型->字符串:to_string,字符串->整型:stoi一、数组数组:下标从0开始,内存地址空间连续(所以数组元素只能覆盖,不能删除),C++中二维数组地址也连续vector:底层是数组,但本身是容器,内存也是连续的,与数组不同的是,vector可以动态扩展1.二分查找(704)二分查找的前提:数组有序且无重复元素二分查找关键点是循环不变原则,即while循环中每次边界处理坚持根据区间定义classSolution{public:intsearch(vector&nums,inttarget){intlef

【刷题day2】数组| 977. 有序数组的平方、209. 长度最小的子数组、59. 螺旋矩阵 II

●977.有序数组的平方●自己看到题目的第一想法首先求平方然后排序,时间复杂度取决于快排的时间复杂度O(logn)classSolution{public:vectorsortedSquares(vector&nums){//第一个想法直接平方然后排序for(inti=0;i&r,intlow,inthight){intmid;if(low&r,intlow,inthight)//划分函数{inti=low,j=hight,pivot=r[low];while(ipivot){j--;}if(i调用已有的函数实现快速排序vectorsortedSquares(vector&nums){for(

【力扣刷题】整数拆分(动态规划)

 个人简历:全栈领域新星博主,万粉博主、帮助初学者入门,记录自己的学习过程个人主页:天寒雨落的博客_CSDN博客-C,CSDN竞赛,python领域博主热门专栏:初学者入门C语言_天寒雨落的博客-CSDN博客 目录动态规划整数拆分题目思路代码执行结果动态规划其基本思想是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解,经分解得到子问题往往不是互相独立的,举个简单的例子:你知道两个1相加等于2,问你三个1相加你是拿前面的两个1相加的结果加上1呢,还是再用1+1+1,你肯定会用前面的那种方法对吧,这就是动态规划,(1+1)就是(1+1+1)的子问题,且并不是相互独立