草庐IT

LeetCode刷题第7周小结

全部标签

代码随想录算法训练营第四十八天 | LeetCode 121. 买卖股票的最佳时机、122. 买卖股票的最佳时机 II

代码随想录算法训练营第四十八天|LeetCode121.买卖股票的最佳时机、122.买卖股票的最佳时机II文章链接:买卖股票的最佳时机买卖股票的最佳时机II视频链接:买卖股票的最佳时机买卖股票的最佳时机II1.LeetCode121.买卖股票的最佳时机1.1思路在本题中我们要通过买卖一次股票而赚的最多。股票买卖问题是动态规划解决的比较经典的一系列,可能这题也能用贪心或者别的思路解决,但这些只能解决具体场景的题目,动态规划是解决一系列的题目。dp数组及其下标的含义:第i天有两个状态买与不买这只股票,因此需要定义二维数组dp[i][0]:表示持有这只股票,所得的最大现金;dp[i][1]:表示不持

LeetCode | 110. 平衡二叉树

LeetCode|110.平衡二叉树OJ链接首先计算出二叉树的高度然后计算当前节点的左右子树的高度,然后判断当前节点的左右子树高度差是否超过1,最后递归地检查左右子树是否也是平衡的。//计算二叉树的高度intheight(structTreeNode*root){if(root==NULL)returnNULL;intleft=height(root->left);intright=height(root->right);returnleft>right?left+1:right+1;}//判断是否是平衡二叉树boolisBalanced(structTreeNode*root){if(roo

《Spring Guides系列学习》guide66 - guide68及小结

要想全面快速学习Spring的内容,最好的方法肯定是先去Spring官网去查阅文档,在Spring官网中找到了适合新手了解的官网Guides,一共68篇,打算全部过一遍,能尽量全面的了解Spring框架的每个特性和功能。接着上篇看过的guide65,接着往下看。guide66、SpringCloudCircuitBreakerGuide首先了解下SpringCloudCircuitBreaker是SpringCloud提供的一组用于实现断路器模式的组件,其中包括Hystrix和Resilience4J两种实现方式。在了解下断路器模式:断路器模式(CircuitBreakerPattern)是一

FPGA接口小结

记录一下FPGA学习过程中学到的一些接口协议一、SPISPI是串行外设接口(SerialPeripheralInterface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议1.1SPI协议SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。(1

代码随想录算法训练营第一天|Leetcode704.二分查找 Leetcode27.移除元素

Leetcode704.二分查找题目链接关键词:二分查找循环不变量区间问题思路:二分查找的应用,关键在于循环过程中区间的维护,记住循环不变量原则,在这个问题中循环不变量是区间的定义,注意左闭右开和左开右闭的区别classSolution{public:intsearch(vector&nums,inttarget){intleft=0,right=nums.size();while(lefttarget){right=middle;}elseleft=middle+1;}}return-1;}};在初始化left与right变量时就应该想清楚区间的定义是什么,如上采用左闭右开classSolu

【LeetCode】第289场单周赛 --- 用中等题来骗来偷袭我这个老同志?

目录题1:6070.计算字符串的数字和题目描述解题思路代码编写(Java版本)题2:2244.完成所有任务需要的最少轮数题目描述解题思路代码编写(Java版本)题3:2245.转角路径的乘积中最多能有几个尾随零题目描述解题思路代码编写(Java版本)题4:2246.相邻字符不同的最长路径题目描述解题思路代码编写(Java版本)Hello朋友们😋,我是秋刀鱼🐟,一只活跃于Java区与算法区的新人博主~欢迎大家加入高校算法学习社区🏰:https://bbs.csdn.net/forums/Suanfa,社区里大佬云集,大家互相交流学习!今天给大家带来LeetCode289场单周赛的题目解析,并分享

【每日易题】Leetcode上Hard难度的动态规划题目——地下城游戏的实现

君兮_的个人主页即使走的再远,也勿忘启程时的初心C/C++游戏开发Hello,米娜桑们,这里是君兮_,博主最近一直在钻研动态规划算法,最近在Leetcode上刷题的时候遇到一个Hard难度的动态规划题,今天就借此机会来给大家分享一下我对这个题目的一些看法和解题思路(放心,我是AC了的)好了废话不多说,开始我们今天的学习吧!!地下城游戏Leetcode上的原题链接在这里:地下城游戏好好好,一看题目里一大堆字还看不懂它到底什么意思,再看看上面标的hard难度,一大堆人相信和博主一样上来就准备先点击退出了,大家先不要捉急,我来带大家一步一步分析一下这个题目的意思题目解析(ps:这个在漫画里真是公主)

【前缀和]LeetCode1862:向下取整数对和

本文涉及的基础知识点C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例包括课程视频作者推荐动态规划LeetCode2552:优化了6版的1324模式题目给你一个整数数组nums,请你返回所有下标对0函数floor()返回输入数字的整数部分。示例1:输入:nums=[2,5,9]输出:10解释:floor(2/5)=floor(2/9)=floor(5/9)=0floor(2/2)=floor(5/5)=floor(9/9)=1floor(5/2)=2floor(9/2)=4floor(9/5)=1我们计算每一个数对商向下取整的结果并求和得到10。示例2:输入:nums=[7,7,7,

【二分查找】LeetCode1970:你能穿过矩阵的最后一天

本文涉及的基础知识点二分查找算法合集作者推荐动态规划LeetCode2552:优化了6版的1324模式题目给你一个下标从1开始的二进制矩阵,其中0表示陆地,1表示水域。同时给你row和col分别表示矩阵中行和列的数目。一开始在第0天,整个矩阵都是陆地。但每一天都会有一块新陆地被水淹没变成水域。给你一个下标从1开始的二维数组cells,其中cells[i]=[ri,ci]表示在第i天,第ri行ci列(下标都是从1开始)的陆地会变成水域(也就是0变成1)。你想知道从矩阵最上面一行走到最下面一行,且只经过陆地格子的最后一天是哪一天。你可以从最上面一行的任意格子出发,到达最下面一行的任意格子。你只能沿

每日一题:LeetCode-283. 移动零

每日一题系列(day08)前言:🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈  🔎🔎如果说代码有灵魂,那么它的灵魂一定是👉👉算法👈👈,因此,想要写出💚优美的程序💚,核心算法是必不可少的,少年,你渴望力量吗😆😆,想掌握程序的灵魂吗❓❗️那么就必须踏上这样一条漫长的道路🏇🏇,我们要做的,就是斩妖除魔💥💥,打怪升级!💪💪当然切记不可😈走火入魔😈,每日打怪,拾取经验,终能成圣🙏🙏!开启我们今天的斩妖之旅吧!✈️✈️题目:给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例:提示:1-231思路:  这题其实很简单,题目要求我们在