E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
————算法训练————
代码随想录
算法训练
营第三天|LeetCOde 203.移除链表元素、707.设计链表、206.反转链表
203.移除链表元素-力扣(LeetCode)/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nullptr){}*ListNode(intx,ListNode*next):v
buskin.
·
2024-01-26 21:37
算法
leetcode
链表
代码随想录
算法训练
营打卡day1 |704. 二分查找,27. 移除元素
一、LeetCode704二分查找题目链接:704.二分查找解法一:左闭右闭classSolution{publicintsearch(int[]nums,inttarget){intleft=0,right=nums.length-1;while(lefttarget){//target在左,右指针前移right=mid-1;}else{returnmid;}}return-1;}}解法二:左闭
橙南花已开
·
2024-01-26 21:06
代码随想录算法训练营
算法
java
代码随想录
算法训练
营第一天| LeetCode704. 二分查找、27. 移除元素
LeetCode704.二分查找704.二分查找-力扣(LeetCode)classSolution{public:intsearch(vector&nums,inttarget){intmin=0;intmax=nums.size()-1;while(minnums[mid]){min=mid+1;}elseif(target&nums,intval){intsum=nums.size();//
buskin.
·
2024-01-26 21:36
算法
leetcode
算法训练
营 day55 动态规划 买卖股票问题系列3
算法训练
营day55动态规划买卖股票问题系列3最佳买卖股票时机含冷冻期309.最佳买卖股票时机含冷冻期-力扣(LeetCode)给定一个整数数组prices,其中第prices[i]表示第i天的股票价格
还是选择了面包
·
2024-01-26 17:19
训练营
算法
动态规划
数据结构
算法训练
营Day56(动态规划16)
583.两个字符串的删除操作力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒本题和动态规划:115.不同的子序列相比,其实就是两个字符串都可以删除了,情况虽说复杂一些,但整体思路是不变的classSolution:defminDistance(self,word1:str,word2:str)->int:dp=[[0]*(len(word2)+1)for_inrange(len(wor
Best,
·
2024-01-26 17:13
动态规划
算法
算法训练
营Day57(动态规划17)
647.回文子串力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒动态规划解决的经典题目,如果没接触过的话,别硬想直接看题解classSolution:defcountSubstrings(self,s:str)->int:dp=[[False]*len(s)for_inrange(len(s))]result=0foriinrange(len(s)-1,-1,-1):#注意遍历顺序fo
Best,
·
2024-01-26 17:13
算法
动态规划
算法训练
营Day55(动态规划15)
392.判断子序列力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒这道题目算是编辑距离问题的入门题目(毕竟这里只是涉及到减法),慢慢的,后面就要来解决真正的编辑距离问题了classSolution:defisSubsequence(self,s:str,t:str)->bool:dp=[[0]*(len(t)+1)for_inrange(len(s)+1)]foriinrange(1,
Best,
·
2024-01-26 17:10
动态规划
算法
目标检测数据集 - 人脑肿瘤检测数据集下载「包含VOC、COCO、YOLO三种格式」
以及作为通用人脑检测数据集场景数据的补充;标注说明:采用labelimg标注软件进行标注,标注质量高,提供VOC(xml)、COCO(json)、YOLO(txt)三种常见目标检测数据集格式,可以直接用于如YOLO等的
算法训练
极智视界
·
2024-01-26 15:09
AI训练数据集工作室
人脑肿瘤检测
人脑肿瘤检测数据集
数据集
YOLO
labelimg
深度学习训练
目标检测
代码随想录
算法训练
营第九天| Leetcode 28.找到字符串第一个匹配项的下标、459.重复的子字符串
一个人能走的多远不在于他在顺境时能走的多快,而在于他在逆境时多久能找到曾经的自己。——KMP目录Leetcode28.找到字符串第一个匹配项的下标Leetcode459.重复的子字符串Leetcode28.找到字符串第一个匹配项的下标题目链接:Leetcode28.找到字符串第一个匹配项的下标题目描述:给定一个haystack字符串和一个needle字符串,在haystack字符串中找出needl
Camellia__Wang
·
2024-01-26 13:43
算法
leetcode
c++
代码随想录
算法训练
营第11天| Leetcode 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、50. 逆波兰表达式求值
目录Leetcode20.有效的括号Leetcode1047.删除字符串中的所有相邻重复项Leetcode150.逆波兰表达式求值Leetcode20.有效的括号题目链接:Leetcode20.有效的括号题目描述:给定一个只包括'(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被
Camellia__Wang
·
2024-01-26 13:43
算法
leetcode
c++
代码随想录
算法训练
营第12天| Leetcode 239. 滑动窗口最大值、347.前 K 个高频元素
目录Leetcode239.滑动窗口最大值Leetcode347.前K个高频元素Leetcode239.滑动窗口最大值题目链接:Leetcode239.滑动窗口最大值题目描述:给定一个数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。思路:本题算是单调队列的经典应用了,尤其是需要自己构造单
Camellia__Wang
·
2024-01-26 13:43
算法
leetcode
c++
代码随想录
算法训练
营第四天| Leetcode 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、160. 链表相交 、142.环形链表II
Leetcode24.两两交换链表中的节点题目链接:Leetcode24.两两交换链表中的节点题目描述:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。思路:本题的重点两两交换,而由于交换这两个节点需要先找到第一个节点的前一个节点,而头节点又没有前一个节点,因此本题构建一个虚拟头节点是一个很好的方法。个人体会,对于任何抽象的模
Camellia__Wang
·
2024-01-26 13:12
算法
leetcode
链表
代码随想录
算法训练
营第八天| Leetcode 344.反转字符串、541. 反转字符串II、替换数字、151.翻转字符串里的单词、右旋字符串
目录Leetcode344.反转字符串Leetcode541.反转字符串II卡码网:替换数字Leetcode151.翻转字符串里的单词卡码网:右旋字符串Leetcode344.反转字符串题目链接:Leetcode344.反转字符串题目描述:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的
Camellia__Wang
·
2024-01-26 13:12
算法
leetcode
c++
代码随想录
算法训练
营第13天| 二叉树的深度优先遍历(递归遍历、迭代遍历、迭代的统一写法)
二叉树的深度优先遍历包括前序遍历(依次访问中、左、右节点)、中序遍历(依次访问左、中、右节点)、后序遍历(依次访问左、右、中节点)。今天主要学习这三种遍历的实现方法目录一、递归遍历二、迭代遍历三、迭代的统一写法这是Leetcode上三道题的链接:Leetcode144.二叉树的前序遍历Leetcode94.二叉树的中序遍历Leetcode145.二叉树的后序遍历如果对二叉树的基础理论知识不了解的可
Camellia__Wang
·
2024-01-26 13:12
算法
深度优先
c++
代码随想录
算法训练
营第14天| Leetcode 102.二叉树的层序遍历、226.翻转二叉树、101.对称二叉树
目录Leetcode102.二叉树的层序遍历Leetcode226.翻转二叉树Leetcode101.对称二叉树Leetcode102.二叉树的层序遍历题目链接:Leetcode102.二叉树的层序遍历题目描述:给你二叉树的根节点root,返回其节点值的层序遍历。(即逐层地,从左到右访问所有节点)。思路:因为要一层一层遍历,因此需要利用队列辅助。因为队列先进先出符合一层一层遍历的逻辑。本题仍然有递
Camellia__Wang
·
2024-01-26 13:09
算法
leetcode
c++
代码随想录
算法训练
营 day38 |动态规划理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
目录一、动态规划理论基础1.动态规划的解题步骤2.动态规划应该如何debug二、(leetcode509)斐波那契数1.递归解法2.动态规划1)确定dp数组以及下标的含义2)确定递推公式3)dp数组如何初始化4)确定遍历顺序5)举例推导dp数组三、(leetcode70)爬楼梯四、(leetcode746)使用最小花费爬楼梯1.新题目描述2.原题目描述一、动态规划理论基础动态规划,英文:Dynam
weixin_42179093
·
2024-01-26 10:17
leetcode
c++代码随想录
算法
动态规划
代码随想录
算法训练
营Day38|动态规划理论基础、509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯
一、动态规划理论基础动态规划五部曲:确定dp数组(dptable)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组二、509斐波那契数1.题目链接:力扣2.思路:按动规五部曲走,思路见代码3.代码:varfib=function(n){//1.dp数组与下标的含义:dp[i]是存放第i个斐波那契数的//2.状态转移方程:dp[i]=dp[i-1]+dp[i-2]//3.初始
萧小小666
·
2024-01-26 10:14
算法训练营
算法
动态规划
数据结构
代码随想录
算法训练
营Day36|435. 无重叠区间、763.划分字母区间、56. 合并区间
目录435.无重叠区间前言算法实现763.划分字母区间前言思路算法实现56.合并区间前言思路算法实现总结435.无重叠区间题目链接文章链接前言本题与昨天引爆气球的那道题思路是一致的,都是考察重叠区间的问题。算法实现classSolution{public:staticboolcmp(constvectora,constvectorb){returna[0]>&intervals){sort(int
张金卓2023
·
2024-01-26 10:43
算法
代码随想录
算法训练
营Day37|738.单调递增的数字、贪心算法总结
目录738.单调递增的数字方法一:暴力解法方法二:贪心解法贪心算法总结738.单调递增的数字题目链接文章链接方法一:暴力解法classSolution{private://各位递增判断函数boolcheckNum(intnum){intmax=10;while(num){intt=num%10;if(max>=t)max=t;elsereturnfalse;num=num/10;}returntr
张金卓2023
·
2024-01-26 10:43
贪心算法
算法
代码随想录
算法训练
营Day35|860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球
目录860.柠檬水找零前言思路算法实现406.根据身高重建队列前言思路算法实现452.用最少数量的箭引爆气球前言思路算法实现总结860.柠檬水找零题目链接文章链接前言本题要判断是否能实现对每位顾客正确找零,一共有5元、10元、20元三种面值的钞票,每杯柠檬水的售价是固定的5美元。只要每次交易后对三种面值的钞票进行准确的变化统计即可判断是否能够正确找零。思路对于三种不同面值的钞票,有如下处理措施:对
张金卓2023
·
2024-01-26 10:13
算法
代码随想录
算法训练
营day38 | 动态规划: 理论基础,509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯
动规五部曲:dp数组递推公式初始化遍历顺序打印检查509.斐波那契数自己写的没什么套路的acclassSolution:deffib(self,n:int)->int:ifn==0:return0ans=[0]*(n+1)ans[0]=0ans[1]=1print(ans)foriinrange(2,n+1):ans[i]=ans[i-1]+ans[i-2]print(ans)returnans[
jzh013
·
2024-01-26 10:12
算法
动态规划
leetcode
python
数据结构
代码随想录
算法训练
营Day38|动态规划理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
目录动态规划理论基础什么是动态规划动态规划的解题步骤动态规划的debug509.斐波那契数前言思路算法实现方法一:动态规划方法二:递归法70.爬楼梯前言思路算法实现拓展746.使用最小花费爬楼梯算法实现总结动态规划理论基础什么是动态规划动态规划,英文名为DynamicProgramming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。所以动态规划中每一个状态一定是由上一个状态推
张金卓2023
·
2024-01-26 10:41
算法
动态规划
代码随想录
算法训练
营第九天 | 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值
代码随想录
算法训练
营第九天|20.有效的括号、1047.删除字符串中的所有相邻重复项、150.逆波兰表达式求值文章目录代码随想录
算法训练
营第九天|20.有效的括号、1047.删除字符串中的所有相邻重复项
-北天-
·
2024-01-26 08:44
代码随想录算法训练营
算法
python
c++
代码随想录
算法训练
营第十天 | 239.滑动窗口最大值、347.前K个高频元素
代码随想录
算法训练
营第十天|239.滑动窗口最大值、347.前K个高频元素文章目录代码随想录
算法训练
营第十天|239.滑动窗口最大值、347.前K个高频元素1LeetCode239.滑动窗口最大值2LeetCode347
-北天-
·
2024-01-26 08:44
代码随想录算法训练营
算法
python
c++
代码随想录
算法训练
营第八天 | 232.用栈实现队列、225.用队列实现栈
代码随想录
算法训练
营第八天|232.用栈实现队列、225.用队列实现栈文章目录代码随想录
算法训练
营第八天|232.用栈实现队列、225.用队列实现栈1栈的理论基础1.1栈的基本概念1.2栈的存储结构1.3
-北天-
·
2024-01-26 08:14
代码随想录算法训练营
算法
python
数据结构
代码随想录
算法训练
营第十一天 | 二叉树基础
代码随想录
算法训练
营第十一天|二叉树基础文章目录代码随想录
算法训练
营第十一天|二叉树基础1二叉树的理论基础1.1二叉树的类型1.2二叉树的存储方式1.3二叉树的遍历方式1.4二叉树的定义2二叉树的递归遍历
-北天-
·
2024-01-26 08:38
代码随想录算法训练营
算法
数据结构
代码随想录
算法训练
营31期day4,力扣24+19+02.07+142
24,动指针classSolution{public:ListNode*swapPairs(ListNode*head){//建立虚拟头结点autodummy=newListNode(-1);dummy->next=head;for(autop=dummy;p->next&&p->next->next;){autoa=p->next;autob=a->next;p->next=b;a->next=
___Dream
·
2024-01-26 07:40
代码随想录31期
算法
leetcode
职场和发展
基于TriDet的时序动作检测
算法训练
自己的slowfast数据
最近一直在研究时序动作识别和检测,也一直关注着目前的最新进展,有好的算法,我都会在我自己的数据集上运行看看,一方面是为自己累积相关算法,另一方面也是想看看,目前最新的算法是否可以应用到一些项目上。这次我运行2023年新出来的算法-时序动作检测TriDet。算法的论文地址和github地址如下:论文地址:https://arxiv.org/pdf/2303.07347.pdfGitHub地址:htt
骑走的小木马
·
2024-01-26 04:48
动作识别
算法
pytorch
计算机视觉
python
代码随想录
算法训练
营第9天 | 28.找出字符串中第一个匹配项的下标、459.重复的子字符串
题目链接:28.找出字符串中第一个匹配项的下标-力扣(LeetCode)classSolution{publicintstrStr(Stringhaystack,Stringneedle){if(haystack==null||haystack.length()==0||needle==null||needle.length()==0){return-1;}int[]next=nextArr(ne
zyx__
·
2024-01-26 00:41
算法
leetcode
java
算法训练
Day9| LeetCode28. 找出字符串中第一个匹配项的下标(KMP算法)
链接:28.找出字符串中第一个匹配项的下标-力扣(LeetCode)KMP算法理论基础知识KMP的经典思想就是:当出现字符串不匹配时,可以记录一部分之前已经匹配的文本内容,利用这些信息避免从头再去做匹配。1.什么是KMP说到KMP,先说一下KMP这个名字是怎么来的,为什么叫做KMP呢。因为是由这三位学者发明的:Knuth,Morris和Pratt,所以取了三位学者名字的首字母。所以叫做KMP2.K
努力学习的牛宁西
·
2024-01-26 00:40
代码随想录训练营
算法
leetcode
职场和发展
代码随想录
算法训练
营第九天|28. 找出字符串中第一个匹配项的下标、459. 重复的子字符串
LeetCode28.找出字符串中第一个匹配项的下标链接:28.找出字符串中第一个匹配项的下标思路:KMP为匹配字符串最重要的算法之一,理解起来也比较有难度,要点为理解前缀表的含义。前缀表由一个和模式串相等长度的数组组成,其下标代表了前后缀相同的最长的字符串的长度。前缀:所有从第一个字符开始,不包括最后一个字符的连续子字符串。后缀:所有不包括第一个字符并以最后一个字符结尾的连续子字符串。如字符串a
ETSlime
·
2024-01-26 00:09
代码随想录算法训练营
leetcode
算法
Day09代码随想录
算法训练
营第一天 |28. 找出字符串中第一个匹配项的下标, 459.重复的子字符串
28.找出字符串中第一个匹配项的下标题目链接:28.找出字符串中第一个匹配项的下标思路:本题就是KMP的裸题,利用KMP进行匹配,(我习惯next数组从1开始),如果初学者一定要将暴力求解的思路KMP的匹配思路next数组的更新思路都自己画图模拟思考,推导一遍,以便加深理解。我自己用文字很难表述,所以直接为大家献上视频。4.帮你把KMP算法学个通透!(理论篇)5.帮你把KMP算法学个通透!(求ne
不爱玩的提拉米苏
·
2024-01-26 00:09
数据结构与算法学习日记
算法
leetcode
数据结构
代码随想录
算法训练
营第九天|kmp算法 28. 找出字符串中第一个匹配项的下标
作用解决字符串匹配的问题原理在目标串与文本串不匹配时,利用之前匹配过的信息继续匹配,而不是继续从头匹配前缀与后缀前缀:包含第一个字符的连续子字符串;后缀:包含最后一个字符的连续子字符串,如字符串aabaaf,前缀有a,aa,aab,aaba,aabaa,后缀有f,af,aaf,baaf,abaaf。前缀表next数组next[i]记录了从0~i之前的字符串的公共前后缀最大长度,当当前字符串的前后缀
qq_41379420
·
2024-01-26 00:36
算法
java
算法
leetcode
代码随想录
算法训练
营第九天| 28.找出字符串中第一个匹配项的下标 459.重复的子字符串
28.找出字符串中第一个匹配项的下标题目链接:https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/思路:暴力了classSolution:defstrStr(self,haystack:str,needle:str)->int:x=len(haystack)y=len(needle)ifx=
lldyy_xb
·
2024-01-26 00:05
leetcode
算法
职场和发展
代码随想录
算法训练
营Day9 | 28. 找出字符串中第一个匹配项的下标、459. 重复的子字符串
KMP算法kmp算法解决字符串匹配问题思想核心:利用匹配失败后的信息,尽量减少模式串与主串的匹配次数前缀与后缀前缀:包含首字母、不包含尾字母的所有子串如aabaaf的前缀有:a、aa、aab、aaba、aabaa(aabaaf不是前缀)后缀:包含尾字母,不包含首字母的所有字串如aabaaf的后缀有:f、af、aaf、baaf、abaaf(aabaaf不是后缀)最长相等前后缀——前缀表从首字符开始,
Y_Vollerei
·
2024-01-26 00:35
数据结构
【代码随想录
算法训练
营】D9 28. 找出字符串中第一个匹配项的下标 459. 重复的子字符串
今日题目:28.找出字符串中第一个匹配项的下标459.重复的子字符串解题思想:KMP算法最长相等前后缀:对模式串的每个子串求最长相等前后缀长度,构造前缀表。(以模式串aabaaf为例)得到了模式串的前缀表后,再通过此表进行匹配。逐一比较,当遇到不匹配的冲突位置,需要寻找前面子串的最长相等前后缀子串长度a0aa1aab0aaba1aabaa2aabaaf0掌握Java基本语法代码:28.找出字符串中
浅夏、
·
2024-01-26 00:04
力扣刷题自记录
算法
代码随想录
算法训练
营29期Day30|LeetCode 332,51,37
文档讲解:回溯算法总结篇重新安排行程N皇后解数独51.N皇后题目链接:https://leetcode.cn/problems/permutations/description/思路:本题的基本含义就是有个N*N的棋盘,需要我们放N个皇后在上面,满足不能有任意两个皇后位于同一行或者同一列或者同一对角线。这题我们可以按行搜索,每行放一个,这样保证了行不重复,递归边界条件为放到第N+1行,这证明前N行
tlingyuqi
·
2024-01-25 22:29
代码随想录算法训练营29期
算法
leetcode
c++
职场和发展
代码随想录
算法训练
营29期Day29|LeetCode 491,46,47
文档讲解:递增子序列全排列全排列II491.递增子序列题目链接:https://leetcode.cn/problems/non-decreasing-subsequences/description/思路:首先我们开一个vector作为子序列数组。在搜索的每一层中,我们枚举nums数组中的每一个数字,判断是否大于等于vector中的最后一个数,如果是,则加入,然后进入下层搜索,如果不是,则接着枚
tlingyuqi
·
2024-01-25 22:28
代码随想录算法训练营29期
算法
leetcode
深度优先
c++
职场和发展
算法训练
营day49_动态规划
算法训练
营day49_动态规划121.买卖股票的最佳时机贪心左边大的没用;枚举每一天,更新ans,若小于买入,更新买入;classSolution{public:intmaxProfit(vector&
摘樱桃几百遍
·
2024-01-25 22:55
代码随想录打卡
算法
动态规划
leetcode
算法训练
营Day52(动态规划13)
300.最长递增子序列力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒今天开始正式子序列系列,本题是比较简单的,感受感受一下子序列题目的思路。classSolution:deflengthOfLIS(self,nums:List[int])->int:iflen(nums)nums[j]:dp[i]=max(dp[i],dp[j]+1)result=max(result,dp[i])#
Best,
·
2024-01-25 22:25
动态规划
算法
算法训练
营Day53(动态规划14)
1143.最长公共子序列力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒体会一下本题和718.最长重复子数组的区别classSolution:deflongestCommonSubsequence(self,text1:str,text2:str)->int:#创建一个二维数组dp,用于存储最长公共子序列的长度dp=[[0]*(len(text2)+1)for_inrange(len(
Best,
·
2024-01-25 22:25
动态规划
算法
算法训练
营Day51(动态规划12)
309.最佳买卖股票时机含冷冻期力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒本题加了一个冷冻期,状态就多了,有点难度,要把各个状态分清,思路才能清晰注意初始化dp[0][0]、dp[0][1]、dp[0][2],dp[0][3,]如果这状态是非法状态,那就主要看递推公式需要把它初始化为多少classSolution:defmaxProfit(self,prices:List[int
Best,
·
2024-01-25 22:24
动态规划
算法
算法训练
营Day48(动态规划9)
说明今天就是打家劫舍的一天,这个系列不算难,可以一口气拿下。198.打家劫舍力扣(LeetCode)官网-全球极客挚爱的技术成长平台classSolution:defrob(self,nums:List[int])->int:iflen(nums)==0:#如果没有房屋,返回0return0iflen(nums)==1:#如果只有一个房屋,返回其金额returnnums[0]#创建一个动态规划数组
Best,
·
2024-01-25 22:54
动态规划
算法
算法训练
营Day50(动态规划11)
说明较难,二刷再仔细打代码123.买卖股票的最佳时机III力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒这道题一下子就难度上来了,关键在于至多买卖两次,这意味着可以买卖一次,可以买卖两次,也可以不买卖classSolution:defmaxProfit(self,prices:List[int])->int:iflen(prices)==0:return0dp=[[0]*5for_i
Best,
·
2024-01-25 22:24
动态规划
算法
代码随想录
算法训练
营Day14(2)|递归遍历,迭代遍历
递归三要素:1.确定递归函数的参数和返回值:确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数,并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。2.确定终止条件:写完了递归算法,运行时经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。3.确定单层递归的逻辑:
WEnyue4261
·
2024-01-25 21:31
算法
数据结构
代码随想录
算法训练
营Day6|242有效字母异位、349求两个数组的交集、
1.3leetcode242有效字母异位这题在开营前琢磨过,复习了一下,leetcode上记了笔记,就直接抄过来了第一次解答忘记了在判断长度是否相等后,长度不相等可以直接返回false,不需要往下判断了。没通过的原因,有部分是因为不熟悉C++的使用,一些功能不知道怎么调用。最简单的办法是暴力破解,用双重循环遍历,同时记录下相同字母的字母数量,时间复杂度是O(n^2).看了其他人的题解得到的收获:收
WEnyue4261
·
2024-01-25 21:01
算法
代码随想录
算法训练
营Day7|四数之和、赎金信、三数之和、四数之和
[收获1]C++中循环的一种写法是for(inta:A){},其中的int可以是auto自动匹配类型。a是与A数组中的元素相同的变量,最先等于A数组的第一个元素,以此进入循环体。或者理解为从数组A中依次取出元素,赋值给a。四数之和原题链接:leetcode454四数之和[哈希法求解思路]先看前两个数组nums1和nums2,将不重复的nums1中元素与nums2中元素之和,放进事先定义好的map中
WEnyue4261
·
2024-01-25 21:01
数据结构
代码随想录
算法训练
营Day9|实现strStr、重复的子字符串
[KMP算法]KMP算法是一种改进的字符串模式匹配算法。模式串与主字符串进行匹配时,失配发生后,不再单纯地将模式后移一位,而是根据当前字符串的特征数来决定模式移动的位数。避免从头匹配。[next数组||前缀表]next数组就是一个前缀表,很多KMP算法实现都是把前缀表统一减一(右移一位,初始位置为-1)之后作为next数组。做字符串匹配时,如果使用暴力匹配,发现不匹配,此时就要从头匹配,但如果使用
WEnyue4261
·
2024-01-25 21:01
数据结构
代码随想录
算法训练
营day2| leetcode977有序数组的平方、209长度最小的子数组、59螺旋矩阵
1.原题:leetcode977有序数组的平方【暴力解法】直接循环遍历所有的数组元素,将它们挨个平方,然后再进行升序排列。源代码如下:【收获1】对数组进行排序时可以使用sort函数sort(Array.begin(),Array.end());【收获2】数组中的push_back()函数的使用方法vectorans;//定义一个新的容器ans用来储存平方后的数字for(inti=0;isorted
WEnyue4261
·
2024-01-25 21:00
代码随想录算法训练营
算法基础
数据结构
代码随想录
算法训练
营day1|leetcode704二分查找、27移除元素
原题链接:leetcode704二分查找第一次运行显示出现了函数的返回绘制路径有错误,我只能表示无奈,因为C++基本语法问题真的好多不清楚,没辙,只能一点点补。【初次题解思路】根据以前学过的二分法,从1/2数组元素处开始出发,判断是否与目标值相等,相等返回下标,不相等进入第二重判断,如果大于目标值,则当前的下标在目标值右侧,向左移动1/2的下标路程,如果小于则向右移动至i+i/2下标处。限制条件为
WEnyue4261
·
2024-01-25 21:30
代码随想录算法训练营
算法基础
数据结构
算法
leetcode
c++
上一页
13
14
15
16
17
18
19
20
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他