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:300.最长递增子序列
代码
随想录
LeetCode:300.最长递增子序列给你一个整数数组nums,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。
xiaoshiguang3
·
2025-02-03 06:21
代码随想录-跟着Carl学算法
leetcode
算法
java
动态规划
LeetCode:674.最长连续递增序列
代码
随想录
LeetCode:674.最长连续递增序列给定一个未经排序的整数数组,找到最长且连续递增的子序列,并返回该序列的长度。
xiaoshiguang3
·
2025-02-03 06:21
代码随想录-跟着Carl学算法
leetcode
算法
java
动态规划
代码
随想录
算法训练营Day38||完全背包问题、leetcode 518. 零钱兑换 II 、 377. 组合总和 Ⅳ 、70. 爬楼梯 (进阶)
一、完全背包问题相较于01背包,完全背包的显著特征是每个物品可以用无数次,遍历顺序也不需要为了保证每个物品只去一次而倒序遍历。#include#includeusingnamespacestd;intmain(){intN,V;cin>>N>>V;vectorweight(N+1,0);vectorvalue(N+1,0);for(inti=0;i>weight[i]>>value[i];}vec
jiegongzhu3z
·
2025-02-03 05:15
算法
leetcode
职场和发展
代码
随想录
2.2
文章目录二叉树的递归遍历(深度优先)144.二叉树的前序遍历【中左右】145.二叉树的后序遍历【左右中】94.二叉树的中序遍历【左中右】二叉树的迭代遍历(深度优先)前序迭代遍历【中左右】中序迭代遍历后序迭代遍历二叉树的统一迭代(深度优先)二叉树的递归遍历(深度优先)不同的遍历其实就是调换下列几句代码的顺序:traversal(cur->left,vec);//左traversal(cur->rig
我会非常幸运
·
2025-02-03 03:28
代码随想录跟练记录
算法
leetcode
java
数据结构
c++
【代码
随想录
训练营】【Day01】第一章|数组|数组理论基础|704.二分查找|27.移除元素
数组理论基础数组是在编程中非常常见的数据存储结构,主要有以下几个特点:数组的存储地址是一片连续的空间数组中存储的元素都是相同类型的修改数组中某一元素的值时,只能覆盖(重新赋值)更多有关数组的理论基础可查阅:《代码
随想录
蚝油菜花
·
2025-02-03 02:48
算法
leetcode
代码随想录
【代码
随想录
训练营】【Day03】第二章|链表|链表理论基础|203.移除链表元素|707.设计链表|206.反转链表
链表理论基础链表的结构类似于一串珠子,每一颗珠子就相当于链表上的一个节点;每一个节点则由数据域和指针域构成,数据域用于存放数据,指针域用于指向其它一个节点或空节点(链表尾部)。链表与数组的主要区别在于:数组是在内存中是连续分布的,但是链表在内存中不是连续分布的。数组在定义的时候,长度就是固定的,如果想改动数组的长度,就需要重新定义一个新的数组。链表的长度是不固定的,可以进行动态增删,适合数据量不固
蚝油菜花
·
2025-02-03 02:45
链表
数据结构
代码
随想录
训练营Day3|Leetcode 203.移除链表元素 Leetcode 707.设计链表 Leetcode 206.反转链表
编程语言:C#链表定义*publicclassListNode{*publicintval;*publicListNodenext;*publicListNode(intval=0,ListNodenext=null){*this.val=val;*this.next=next;*}*}Leetcode203.移除链表元素题目链接:203.移除链表元素-力扣(LeetCode)题意:删除链表中等于
?��??
·
2025-02-03 01:44
leetcode
链表
算法
LeetCode Day3 链表: 203.移除链表元素、707.设计链表、206.反转链表
移除链表元素(1)题目描述(2)解题思路707.设计链表(1)题目描述(2)解题思路206.反转链表(1)题目描述(2)解题思路203.移除链表元素(1)题目描述LeetCode203.移除链表元素代码
随想录
影子修
·
2025-02-03 01:13
leetcode
链表
算法
代码
随想录
算法训练营第四十一天-动态规划-股票-123.买卖股票的最佳时机III
题目要求最多进行两次买卖,而且每次买卖的交易日期不能交叠,必须要独立题目的关键是拆分动规五部曲:动态数组定义dp[i][0]表示第i天不操作dp[i][1]表示第i天持有股票,可能会延续前一天已买入的状态,也可能是当天买入dp[i][2]表示第i天不持有,可能会延续前一天不持有状态,也可能是当天卖出dp[i][3]表示第i天第二次持有dp[i][4]表示第i天第二次不持有递推公式:dp[i][0]
taoyong001
·
2025-02-01 23:07
算法
动态规划
c++
leetcode
(leetcode 213 打家劫舍ii)
代码
随想录
:将一个线性数组换成两个线性数组(去掉头,去掉尾)分别求两个线性数组的最大值最后求这两个数组的最大值代码
随想录
视频#include#include#include//nums:2,1,1,2/
维齐洛波奇特利(male)
·
2025-02-01 06:53
leetcode
算法
数据结构
代码
随想录
1.31
文章目录232用栈实现队列225.用队列实现栈20.有效的括号232用栈实现队列**c++语法:定义栈:stackstIn;往栈里输入元素:stIn.push(x);检测栈中是否为空::stIn.empty()返回栈顶,但不删除成员:stIn.top()移除栈顶元素:stIn.pop()返回栈内元素的大小:stIn.size()classMyQueue{public:stackstIn;stack
我会非常幸运
·
2025-01-31 23:51
代码随想录跟练记录
数据结构
算法
c++
力扣
开发语言
代码
随想录
day4
24.两两交换链表:注意虚拟头节点的使用ListNode*swapPairs(ListNode*head){ListNode*dummy=newListNode();dummy->next=head;ListNode*current=dummy;while(current->next!=nullptr&¤t->next->next!=nullptr){ListNode*tmp=curr
独正己身
·
2025-01-31 21:11
c语言
算法
数据结构
c++
代码
随想录
算法训练营第三十九天-动态规划-337. 打家劫舍 III
老师讲这是树形dp的入门题目解题思路是以二叉树的遍历(递归三部曲)再结合动规五部曲dp数组如何定义:只需要定义一个二个元素的数组,dp[0]与dp[1]dp[0]表示不偷当前节点的最大价值dp[1]表示偷当前节点后的最大价值这样可以把每个节点的状态值都表示出来但这个数组的两个值只表示当前节点的状态值递归时要使用后序遍历:使用后序遍历的原因就是要从叶子结点一层一层向上统计出来/***Definiti
taoyong001
·
2025-01-30 22:54
算法
动态规划
c++
leetcode
代码
随想录
算法训练营第五十九天| 503.下一个更大元素II、42. 接雨水
代码
随想录
算法训练营第五十九天|503.下一个更大元素II、42.接雨水503.下一个更大元素II解题代码42.接雨水解题代码503.下一个更大元素II题目链接:503.下一个更大元素II解题代码funcnextGreaterElements
Joanna-升
·
2025-01-30 10:44
代码随想录训练营
算法
leetcode
数据结构
代码
随想录
算法训练营第三十九天|198.打家劫舍、
题目链接:198.打家劫舍-力扣(LeetCode)思路:因为隔一家才能取,所以当前最大的价值要么是dp[i-2]+nums[i]或者是dp[i-1]classSolution(object):defrob(self,nums):""":typenums:List[int]:rtype:int"""dp=[0]*len(nums)if(len(nums)==1):returnnums[0]dp[0
jinshengqile
·
2025-01-30 06:41
算法
leetcode
动态规划
代码
随想录
算法训练营第三十九天-动态规划-198. 打家劫舍
动规五部曲dp[i]表示在下标为i的房间偷或不偷与前面所偷之和所能获得的最大价值递推公式:dp[i]=std::max(dp[i-2]+nums[i],dp[i-1])初始化:要给dp[0]与dp[1]来给定初始值,因为递推公式有-1与-2。dp[0]=nums[0],dp[1]=std::max(nums[0],nums[1]);其它下标值,初始成任意值都可以,因为其值是由前面元素推导出来的遍历
taoyong001
·
2025-01-30 06:08
算法
动态规划
c++
leetcode
代码
随想录
算法训练营第三十八天-动态规划-完全背包-279.完全平方数
把目标值当作背包容量,每个平方数当作物品,题目变更为装满指定容量的背包,最小用几个物品会不会出现拼凑不出来的情况?不会,因为有数字1,对任意正整数百分百能拼凑出来因此此题目与上一道题就变得一模一样了classSolution{public:intnumSquares(intn){std::vectordp(n+1,INT_MAX);dp.at(0)=0;for(inti=1;i*i<=n;++i)
taoyong001
·
2025-01-30 04:57
算法
动态规划
c++
leetcode
代码
随想录
算法训练营第三十八天-动态规划-完全背包-139.单词拆分
类似于回溯算法中的拆分回文串题目是要求拆分字符串,问这些字符串是否出现在字典里。但这道题可以反着来考虑,从字典中的单词能不能组成所给定的字符串如果这样考虑,这个字符串就背包,容器字典中的单词就是一个一个物品问题就转化成这些物品能不能正好装满这个背包,而且这些物品可以使用多次因此这是一个完全背包类问题动规五部曲dp[j]数组含义:把题目给定的字符串能不能用字典字符串来添满。字符串长度为j时,能被字典
taoyong001
·
2025-01-30 04:57
算法
动态规划
c++
leetcode
代码
随想录
算法训练营52期
flag:岁末年初,万籁俱寂,孤帆起伏,肃杀清凉。不以物喜,不以已悲,投身算法,杀回青春日期天数链接2024-12-11第一天数组理论基础,704.二分查找,27.移除元素数组理论基础,977.有序数组平方结果再排序2024-12-12第二天数组理论基础,59.螺旋矩阵II数组理论基础,209.长度最小的子数组2024-12-13第三天链表理论基础,203.移除链表元素链表理论基础,707.设计链
taoyong001
·
2025-01-30 04:56
算法
c++
leetcode
代码
随想录
算法训练营第三十八天|Day38 动态规划
322.零钱兑换视频讲解:https://www.bilibili.com/video/BV14K411R7yvhttps://programmercarl.com/0322.%E9%9B%B6%E9%92%B1%E5%85%91%E6%8D%A2.html思路#definemin(a,b)((a)>(b)?(b):(a))intcoinChange(int*coins,intcoinsSize,
是糖不是唐
·
2025-01-30 04:53
算法
动态规划
c语言
数据结构
代码
随想录
算法训练营day32:动态规划01
动态规划理论基础动态规划刷题大纲适用范围:某一问题有很多重叠子问题,使用动态规划是最有效的。所以动态规划中每一个状态一定是由上一个状态推导出来的,这一点就区分于贪心,贪心没有状态推导,而是从局部直接选最优的。套路:dp数组,下标的含义——定义一维或者二维的状态转移数组递推公式:当前状态是怎么被上一个状态决定出来的dp数组如何初始化遍历顺序打印dp数组——来check算法是否正确509.斐波那契数力
树懒爱沙发
·
2025-01-30 03:45
算法
动态规划
leetcode
数据结构
代码
随想录
算法训练营day10
代码
随想录
算法训练营day10来到了栈与队列,经过昨天的总结感觉自己快忘干净了。。有种G的感觉来到这先搞一下吧什么是栈?
魏进
·
2025-01-30 02:14
算法
数据结构
java
代码
随想录
算法训练营Day32
78.子集力扣题目链接classSolution{List>res=newArrayListpath=newLinkedList>subsets(int[]nums){dfs(nums,0);returnres;}publicvoiddfs(int[]nums,intstart){res.add(newArrayList(path));for(inti=start;i
Nruonan
·
2025-01-30 02:09
算法
算法
深度优先
动态规划算法(25.1.27)
写在前面:已经有半年在忙计算机四大件了,算法可以说是除了10月份看了看代码
随想录
的题并跟着写了点题之外一点题都没做。
一位不愿透露姓名的程序猿
·
2025-01-30 02:06
算法
动态规划
代码
随想录
Day4 242
242利用哈希表一增一减即可349两个哈希表存储202主要是避免循环循环了就不是快乐1今天题相对比较简单
qq_40829893
·
2025-01-29 02:00
java
LeetCode:62.不同路径
代码
随想录
LeetCode:62.不同路径一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。
xiaoshiguang3
·
2025-01-28 19:12
代码随想录-跟着Carl学算法
leetcode
算法
java
动态规划
LeetCode:70. 爬楼梯
代码
随想录
LeetCode:70.爬楼梯假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?
xiaoshiguang3
·
2025-01-28 17:47
代码随想录-跟着Carl学算法
leetcode
算法
java
动态规划
【代码
随想录
:数组】python3
数组Day1704.二分查找,27.移除元素704二分查找35搜索插入位置34在排序数组中查找元素的第一个和最后一个位置27移除元素:双指针977.有序数组的平方209.长度最小的子数组:最小滑窗904.水果成篮:最大滑窗59.螺旋矩阵IIDay1704.二分查找,27.移除元素704二分查找时间复杂度为O(logn)O(logn)O(logn),空间复杂度为O(1)O(1)O(1)leetcod
zzzmy159
·
2025-01-28 06:35
代码随想录
leetcode
代码
随想录
day2
209.长度最小的子数组第一种写法,最简单理解时间复杂度O(n^2),无法通过intminSubArrayLen(inttarget,vector&nums){intresult=0;for(inti=0;i=target){result=1;break;}for(intj=i+1;j=target){if(result==0){result=j-i+1;}else{result=min(resu
独正己身
·
2025-01-28 06:03
c语言
算法
数据结构
c++
力扣动态规划-12【算法学习day.106】
建议灵神的题单和代码
随想录
)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!
南宫生
·
2025-01-28 05:58
算法
#
动态规划
算法
leetcode
动态规划
java
数据结构
力扣动态规划-10【算法学习day.104】
建议灵神的题单和代码
随想录
)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!
南宫生
·
2025-01-28 05:27
算法
#
动态规划
算法
leetcode
动态规划
java
学习
代码
随想录
1.22
文章目录704二分查找27移除元素977有序数组的平方209长度最小的数组59.螺旋矩阵II58区间和704二分查找注意定义一个计数器,判断循环结束,不然会超时27移除元素双指针,用一个快指针一个慢指针,判断条件是快指针指向的数字不等于目标值的时候,给慢指针赋值977有序数组的平方双指针,一个从左边查找一个从右边茶轴,需要注意的是,要从结果数组的右边开始赋值,因为数组的两端的平方大于中间的平方20
我会非常幸运
·
2025-01-27 02:53
代码随想录跟练记录
算法
数据结构
c++
力扣
刷题笔记 贪心算法-1 贪心算法理论基础
贪心算法比较特殊,知识结构零散,而且理论考察比较少,这里只总结几个重要得部分1.贪心算法的使用条件实际做题的时候是不会给出“贪心算法”这个标签的,所以要看什么时候用,代码
随想录
给出的答案是没有明显特征!
圆圆滚滚小企鹅。
·
2025-01-27 01:43
刷题笔记
笔记
贪心算法
算法
leetcode
代码
随想录
算法训练营第十五天| 二叉树3
题目链接/文章讲解/视频讲解:代码
随想录
状态:要辨别新增函数的位置,self的用法二叉树节点的深度:指从根节点到该节点的最长简单路径边的条数,从上往下数二叉树节点的高度:指从该节点到叶子节点的最长简单路径边的条数
Rachela_z
·
2025-01-26 21:43
算法
字符串 5. 实现 strStr() (KMP算法初探)
字符串5.实现strStr()(KMP算法初探)28.找出字符串中第一个匹配项的下标-力扣(LeetCode)代码
随想录
难度3-简单(但是个人觉得用KMP算法解决并不简单)(可以直接拉到最后看KMP算法的
Mophead_Zarathustra
·
2025-01-26 19:28
Mophead的小白刷题笔记
leetcode
python
代码随想录
字符串
KMP算法
代码
随想录
算法训练营第三十七天-动态规划-完全背包-理论基础
完全背包与01背包根本区别就是物品的数量完全背包,物品的数量是无限的,可以任意取多个01背包物品的数量则只有一个遍历顺序01背包的一维滚动数组必须要从后向前遍历,这是防止一个物品被多次加入背包中而完全背包就是要多次加入物品,所以遍历自然而然就变成正序遍历了for(intj=weight[i];j<=capacityOfCurrentBag;++j)因为是二层遍历,且这两层遍历可以交换可以交换的本质
taoyong001
·
2025-01-26 18:49
算法
动态规划
c++
leetcode
代码
随想录
算法训练营第三十六天-动态规划-474.一和零
背包问题本身就已经够反思维的了,竟然物品会有两个维度的情况,这是闹哪样?题目要求是最大子集的个数题目中的mmm和nnn可以类比为容器,要装潢这个容器,最多要多少个元素的个数,就是结果,这个容器最多有mmm个0,nnn个1这个容器相当于一个背包,这个背包是有两个维度,最多有mmm个0,nnn个1,装潢这个背包最多需要多少个物品给出的数据集就是物品这是一道01背包问题动规五部曲这里要使用一个二维的动规
taoyong001
·
2025-01-26 16:37
算法
动态规划
c++
leetcode
代码
随想录
算法训练营第七天 | LeetCode344.反转字符串、LeetCode541.反转字符串II、卡码网54.替换数字
代码
随想录
算法训练营第七天|LeetCode344.反转字符串、LeetCode541.反转字符串II、卡码网54.替换数字01-1LeetCode344.反转字符串相关资源题目链接:反转字符串文章讲解
ORIPID
·
2025-01-26 15:31
算法
【代码
随想录
】第一章-数组
【代码
随想录
】第一章-数组第一章-数组1二分查找704.二分查找Tip:左右边界35.搜索插入位置34.在排序数组中查找元素的第一个和最后一个位置69.x的平方根367.有效的完全平方数2移除元素27.
bblb
·
2025-01-26 14:25
代码随想录
算法
数据结构
java
代码
随想录
1.25
文章目录哈希表理论242.有效的字母异位词349.两个数组的交集202.快乐数1.两数之和哈希表理论什么时候使用哈希法,当我们需要查询一个元素是否出现过,或者一个元素是否在集合里的时候,就要第一时间想到哈希法。哈希表结构:数组,集合,映射数组就是简单的哈希表,但是数组的大小可不是无限开辟的哈希函数哈希碰撞(拉链法、线性探测法)242.有效的字母异位词就是将字母映射到record数组中,数组的位置记
我会非常幸运
·
2025-01-26 08:01
代码随想录跟练记录
哈希算法
散列表
算法
数据结构
c++
力扣
代码
随想录
Day 11 | 【第五章 栈与队列】150.逆波兰表达式求值、239.滑动窗口最大值、347.前 K 个高频元素、总结
一、150.逆波兰表达式求值本题不难,但第一次做的话,会很难想到,所以先看视频,了解思路再去做题题目链接/文章讲解/视频讲解:代码
随想录
1.看完代码
随想录
的想法(1)首先需要充分理解什么是逆波兰表达式,
Accept17
·
2025-01-25 18:13
java
开发语言
代码
随想录
算法训练营第 16 天(树4)| 513.找树左下角的值、112. 路径总和i ii、106.从中序与后序遍历序列构造二叉树
一、#513.找树左下角的值关键思路:这个题使用层序遍历(迭代法)更容易一些解法一:递归法先求出深度最大的一层,然后找这一层最左边的节点此题用前序后序中序都可以,因为没有对根节点有操作,只要保证先是左再是右就行classSolution{intmaxDepth=-1;//记录最大深度intres=0;//记录最大深度的值publicintfindBottomLeftValue(TreeNodero
去薯条搞点码头
·
2025-01-24 15:49
代码随想录
算法
代码
随想录
算法训练营第十二天|栈与队列总结
栈里面的元素在内存中是连续分布的么?陷阱1:栈是容器适配器,底层容器使用不同的容器,导致栈内数据在内存中不一定是连续分布的。陷阱2:缺省情况下,默认底层容器是deque,那么deque在内存中的数据分布是什么样的呢?答案是:不连续的,下文也会提到deque。栈经典题目1.栈在系统中的应用,递归的实现是栈:每一次递归调用都会把函数的局部变量、参数值和返回地址等压入调用栈中2.括号匹配问题3.字符串去
Rachela_z
·
2025-01-24 13:04
开发语言
python
【LeetCode 刷题】二叉树-广度优先遍历
此博客为《代码
随想录
》二叉树章节的学习笔记,主要内容为二叉树的广度优先遍历相关的题目解析。
Bran_Liu
·
2025-01-24 12:56
LeetCode
leetcode
算法
python
数据结构
代码
随想录
1.23
文章目录链表基础203.移除链表元素707.设计链表==206反转链表==链表基础链表定义:structListnode{intval;//链表节点数值Listnode*next;//下个节点的指针}//使用,定义头节点就行Listnode*name=newListnode();head->val=5;203.移除链表元素设置一个虚拟头节点。需要定义了两个新链表,一个是用于存储虚拟头节点的链表,一
我会非常幸运
·
2025-01-24 11:45
代码随想录跟练记录
c++
力扣
算法
数据结构
链表
开发语言
LeetCode :134.加油站
代码
随想录
LeetCode:134.加油站在一条环路上有n个加油站,其中第i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第i个加油站开往第i+1个加油站需要消耗汽油cost[i]升。
xiaoshiguang3
·
2025-01-24 01:57
代码随想录-跟着Carl学算法
leetcode
算法
链表 7. 环形链表II
链表7.环形链表II142.环形链表II-力扣(LeetCode)代码
随想录
难度2-中等放弃分析。直接看代码
随想录
的解析,比较详细且透彻。要点理解:整体分为两部分。快慢指针追赶,以判定是否有环。
zarathustra000
·
2025-01-24 00:22
小白的代码随想录刷题笔记
Mophead的小白刷题笔记
leetcode
代码随想录
链表
代码
随想录
DAY07
代码
随想录
DAY07哈希表454题:四数相加给定四个包含整数的数组列表A,B,C,D,计算有多少个元组(i,j,k,l),使得A[i]+B[j]+C[k]+D[l]=0。
shiliuhua05
·
2025-01-23 15:17
leetcode
算法
数据结构
排序算法
代码
随想录
day1
704.二分查找:1.左闭右闭intsearch(vector&nums,inttarget){intright=nums.size()-1;intleft=0;while(left>1);if(nums.at(middle)==target){returnmiddle;}elseif(nums[middle]>target){right=middle-1;}else{left=middle+1;
独正己身
·
2025-01-23 14:09
c语言
算法
数据结构
c++
leetcode206-反转链表
node,因为一旦反转,之前的链路就断开了,比如cur.next=pre设置以后,原来的cur.next就找不到了,所以需要设置一个临时指针保存原本的cur.next,这样才能继续下一步操作图片来自代码
随想录
实现
记得早睡~
·
2025-01-23 12:25
算法小课堂
链表
数据结构
leetcode
算法
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他