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
力扣动态规划算法题
动态规划
基础概念
目录定义原理优缺点几个经典的
动态规划
问题:
动态规划
问题写题步骤定义DP是DynamicProgramming的简称,即
动态规划
。
不要数手指啦
·
2024-02-08 00:03
动态规划
算法
2019-07-31
LeetCode
算法题
10:题目描述解题思路:可以通过js中数组的splice方法直接在指定位置删除重复元素。将相邻的两个元素进行比较,如果这两个元素相等,就删除后一个元素。
Simoner
·
2024-02-08 00:18
华为OD机试 - 猴子爬山(Python)
用例输入50输出122106097说明无输入3输出2说明无题目解析这题是一道经典的分治
算法题
、以及
动态规划
基础题。这题既可以使用
AsiaFT.
·
2024-02-08 00:11
Py
华为OD机试AB卷
华为od
python
算法
补题:leetcode第382场周赛 3022. 给定操作次数内使剩余元素的或值最小
3022.给定操作次数内使剩余元素的或值最小-
力扣
(LeetCode)拆位n个数进行或运算的结果最小,每次操作可以对相邻的两个数进行与运算,至多进行k次操作n个数进行或运算,可以对每个数进行拆解,拆解成最小的
.SacaJawea
·
2024-02-08 00:40
练习赛补题
leetcode
算法
数据结构
【
算法题
】92. 反转链表 II
题目给你单链表的头指针head和两个整数left和right,其中left<=right。请你反转从位置left到位置right的链表节点,返回反转后的链表。示例1:输入:head=[1,2,3,4,5],left=2,right=4输出:[1,4,3,2,5]示例2:输入:head=[5],left=1,right=1输出:[5]提示:链表中节点数目为n1<=n<=500-500<=Node.v
YifengGuo233
·
2024-02-08 00:08
LeetCode练习手册
算法
链表
数据结构
力扣
回文链表
力扣
回文链表1.要求2.思想及代码3.问题1.要求请判断一个链表是否为回文链表。
dayday学习
·
2024-02-07 23:51
领扣刷题
力扣回文链表
力扣
之链表9—回文链表
请判断一个链表是否为回文链表。进阶:你能否用O(n)时间复杂度和O(1)空间复杂度解决此题?方法1将链表元素存入列表后判断但其时间复杂度和空间复杂度为O(n)classSolution:defisPalindrome(self,head:ListNode)->bool:ifnothead:returnTruels=[]cur=headwhilecur:ls.append(cur.val)cur=c
程序媛的攻城之路
·
2024-02-07 23:50
算法与数据结构
链表
指针
数据结构
[
力扣
Hot100]Day23 反转链表
题目描述给你单链表的头节点head,请你反转链表,并返回反转后的链表。出处思路经典考研题,用头插法解决。代码classSolution{public:ListNode*reverseList(ListNode*head){if(!head||!head->next)returnhead;ListNode*p1=head;ListNode*p2=head->next;ListNode*p3=head
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day25 环形链表
题目描述给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。出处思路经典考研题,使用快慢两指针,若有换两指针必
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day26 环形链表 II
题目描述给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。如果pos是-1,则在该链表中没有环。注意:pos不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改链表。出处思路跟昨
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day24回文链表
题目描述给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。出处思路首先计算链表长度n,然后拿一个数组存前n/2项,若n为奇数则略过第n/2+1项,随后对链表后n/2项遍历,与数组内容比对即可。代码classSolution{public:boolisPalindrome(ListNode*head){vectorstack;intn=0;Li
谛听misa
·
2024-02-07 23:45
力扣Hot100题
leetcode
算法
2021牛客寒假算法基础集训营1
2021牛客寒假算法基础集训营1咕了好久~~A串分析:利用
动态规划
,当时没想到
动态规划
,还想找找规律什么的,看看都是重复几个,然后前缀和的。
Akari Kitō
·
2024-02-07 22:12
题解
c++
acm竞赛
2021-09-23
IT1.LeetCode
力扣
:在排序数组中查找数字I2021-09-23(剑指Offer53-I.在排序数组中查找数字I)2.《剑指offer》:p257~p265英语1.墨墨背单词:复习50个单词
幸福大黑鸭
·
2024-02-07 21:35
【
力扣
】查找总价格为目标值的两个商品,双指针法
查找总价格为目标值的两个商品原题地址方法一:双指针这道题和
力扣
第一题“两数之和”非常像,区别是这道题已经把数组排好序了,所以不考虑暴力枚举和哈希集合的方法,而是利用单调性,使用双指针求解。
努力学习游泳的鱼
·
2024-02-07 21:56
leetcode
算法
职场和发展
Day 39 |
动态规划
62.不同路径 、 63. 不同路径 II
62.不同路径题目文章讲解视频讲解思路:确定dp[i][j]含义:到达[i,j]有多少条路径;递推公式:dp[i][j]=dp[i][j-1]+dp[i-1][j]classSolution{publicintuniquePaths(intm,intn){int[][]dp=newint[m][n];for(inti=0;i
小小白和纯牛奶
·
2024-02-07 20:18
二月红
动态规划
算法
java
Day 38 |
动态规划
理论基础 、 509. 斐波那契数 、 70. 爬楼梯 、746. 使用最小花费爬楼梯
理论基础文章讲解视频讲解
动态规划
五部曲509.斐波那契数题目文章讲解视频讲解思路:classSolution{publicintfib(intn){if(n<2)returnn;inta=0,b=1,c
小小白和纯牛奶
·
2024-02-07 20:48
二月红
动态规划
算法
Day 41 |
动态规划
343. 整数拆分 、 96.不同的二叉搜索树
343.整数拆分题目文章讲解视频讲解思路:不需要考虑正整数为1的情况。dp[i]表示正整数i拆分后结果的最大乘积,递推公式中j表示拆分的正整数,最大不会超过i-j,否则会轮回。dp[i-j]是正整数i-j拆分后结果最大乘积。classSolution{publicintintegerBreak(intn){int[]dp=newint[n+1];//dp[i]表示正整数i拆分后结果的最大乘积dp[
小小白和纯牛奶
·
2024-02-07 20:47
二月红
动态规划
算法
Day41
动态规划
part03 343. 整数拆分 96. 不同的二叉搜索树
动态规划
part03343.整数拆分96.不同的二叉搜索树343.整数拆分动规五部曲:1.确定dp数组以及下标的含义dp[i]含义为:对i进行整数拆分,最大乘积是dp[i]2.确定递推公式dp[i]=max
Alexander yaphets
·
2024-02-07 20:47
代码随想录刷题
动态规划
算法
数据结构
leetcode
c++
【
力扣
- 回文链表】
题目描述给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。提示:链表中节点数目在范围[1,100000]内0val;//移动到链表的下一个节点head=head->next;}//使用双指针从数组vals的两端向中间遍历,比较对应位置的值是否相等//注意这里只用了一个循环,本来想用双循环,但是双循环的话没有办法首尾对应for(inti=0,j
六月悉茗
·
2024-02-07 19:47
C语言学习报告
链表
算法
【C语言 -
力扣
- 反转链表】
反转链表题目描述给你单链表的头节点head,请你反转链表,并返回反转后的链表。题解1-迭代假设链表为1→2→3→∅,我们想要把它改成∅←1←2←3。在遍历链表时,将当前节点的next指针改为指向前一个节点。由于节点没有引用其前一个节点,因此必须事先存储其前一个节点。在更改引用之前,还需要存储后一个节点。最后返回新的头引用。//函数:反转单链表structListNode*reverseList(s
六月悉茗
·
2024-02-07 19:16
C语言学习报告
c语言
leetcode
链表
【
力扣
- 时间复杂度和空间复杂度】
力扣
刷题时,题目要求里经常有时间复杂度和空间复杂度的要求。那么,什么是时间复杂度和空间复杂度呢?定义时间复杂度和空间复杂度都是用于衡量算法性能的指标,但它们分别从不同的角度来评估算法的效率。
六月悉茗
·
2024-02-07 19:16
C语言学习报告
leetcode
算法
java
【C语言 - 哈希表 -
力扣
- 相交链表】
相交链表题目描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。图示两个链表在节点c1开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后,链表必须保持其原始结构。自定义评测:评测系统的输入如下(你设计的程序不适用此输入):intersectVal-相交的起始节点的值。如果不存在相交节点,这一值为0lis
六月悉茗
·
2024-02-07 19:11
C语言学习报告
c语言
散列表
leetcode
力扣
刷题记录(Java)(一)
两数相加个人版本一官方版本个人版本二无重复字符的最长子串个人版本一官方版本其他版本一串联所有单词的子串个人版本一官方版本其他版本一找到字符串中所有字母异位词个人版本一个人版本二官方版本一官方版本二寻找两个正序数组的中位数个人版本一官方版本一(二分查找)官方版本二(划分数组)最长回文子串个人版本一官方版本一(
动态规划
愿你被这个世界温暖相待
·
2024-02-07 19:10
算法记录
leetcode
java
链表
【
力扣
】快乐数,哈希集合+快慢指针+数学
证明:情况1是存在的,如
力扣
的示例一:接下来只需证明,反复执行getNext操作,最终一定会无限循环(停留在1可以理解为无限的1->1循环)。
努力学习游泳的鱼
·
2024-02-07 19:39
leetcode
哈希算法
算法
【
力扣
】盛最多水的容器,双指针法
盛最多水的容器原题地址方法一:双指针如果使用暴力枚举,时间复杂度为,效率太低,会超时。考虑使用双指针,利用单调性求解。用left和right作为数组height的下标,分别初始化为0和size-1。考虑在区间[left,right]的范围内,理论上会有种配对可能,但其中有一些情况不需要再考虑。其中容量=高度*宽度,即area=min(height[left],height[right])*(rig
努力学习游泳的鱼
·
2024-02-07 19:39
leetcode
算法
职场和发展
力扣
LCP 30. 魔塔游戏(贪心+小顶堆)
力扣
LCP30.魔塔游戏(贪心+小顶堆)LCP30.魔塔游戏贪心模拟过程,将之前扣减的血量都放入优先队列中,每次快死之前,就取出堆顶的元素(扣最多的血)给自己加上,这样的贪心思想能保证我们移动到尾部的元素是最少的优先级队列
小麦China
·
2024-02-07 19:08
力扣刷题
队列
数据结构
面试
queue
c++
每日一题
力扣
2641二叉树的堂兄弟节点Ⅱ
题目描述:给你一棵二叉树的根root,请你将每个节点的值替换成该节点的所有堂兄弟节点值的和。如果两个节点在树中有相同的深度且它们的父节点不同,那么它们互为堂兄弟。请你返回修改值之后,树的根root。注意,一个节点的深度指的是从树根节点到这个节点经过的边数。示例1:输入:root=[5,4,9,1,10,null,7]输出:[0,0,0,7,7,null,11]解释:上图展示了初始的二叉树和修改每个
乐超kawhi
·
2024-02-07 19:38
每日刷题
leetcode
算法
职场和发展
leetcode
算法题
目——13
13.罗马数字转整数罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符数值I1V5X10L50C100D500M1000例如,罗马数字2写做II,即为两个并列的1。12写做XII,即为X+II。27写做XXVII,即为XX+V+II。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如4不写做IIII,而是IV。数字1在数字5的左边,所表示的数等于大数5减小数1得到的数值4。
呦柚子
·
2024-02-07 19:38
LeetCode
【
力扣
】罗马数字转整数,哈希集合+模拟
罗马数字转整数原题地址方法一:模拟罗马数字是字符串,其中每个字符都对应一个整数值,为了方便查找,可以预先把这种对应关系存储到哈希表中。遍历字符串,对于每个字符,如果该字符不是最右边的字符,且它右边的字符对应的整数值更大一些,就要减去该字符对应的整数值。否则就加上该字符对应的整数值。//方法一:模拟classSolution{public:intromanToInt(strings){intans=
努力学习游泳的鱼
·
2024-02-07 19:38
leetcode
哈希算法
算法
力扣
题目训练(7)
2024年1月31日
力扣
题目训练2024年1月31日
力扣
题目训练387.字符串中的第一个唯一字符389.找不同401.二进制手表109.有序链表转换二叉搜索树114.二叉树展开为链表52.N皇后II2024
落幕·重逢
·
2024-02-07 19:37
编程学习
leetcode
算法
c++
每日一题
力扣
LCP30.魔塔游戏
题目描述:小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量无影响。小扣初始血量为1,且无上限。假定小扣原计划按房间编号升序访问所有房间补血/打怪,为保证血量始终为正值,小扣需对房间访问顺序进行调整,每次仅能将一个怪物房间(负数的
乐超kawhi
·
2024-02-07 19:07
每日刷题
leetcode
游戏
算法
力扣
:1351. 统计有序矩阵中的负数
每次思考都是一次进步1、简单做法,一行一行的去做二分查找。classSolution{public:intcountNegatives(vector>&grid){intthesize=grid.size();intcount=0;for(introw=0;row=0)l=mid+1;elseif(grid[row][mid]<0)r=mid;}if(l<=grid[row].size()-1&&
宋轻云
·
2024-02-07 18:37
力扣个人刷题题解
leetcode
矩阵
算法
双非本科准备秋招(18.1)——
力扣
二叉树
1、404.左叶子之和方法一:可以在父节点判断一下,如果左子树不为null,并且左子树没有左右子树,说明这是个左叶子节点。classSolution{publicintsumOfLeftLeaves(TreeNoderoot){if(root==null)return0;intLV=sumOfLeftLeaves(root.left);intRV=sumOfLeftLeaves(root.righ
随心自风流
·
2024-02-07 18:00
数据结构
算法
leetcode
秋招
求职招聘
力扣
二叉树
力扣
刷题 - LCP 30. 魔塔游戏
题目:小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量无影响。小扣初始血量为1,且无上限。假定小扣原计划按房间编号升序访问所有房间补血/打怪,为保证血量始终为正值,小扣需对房间访问顺序进行调整,每次仅能将一个怪物房间(负数的房间
TyuIn
·
2024-02-07 17:53
算法学习
leetcode
算法
java
后端
数据结构
力扣
刷题-135.分发糖果
n个孩子站成一排。给你一个整数数组ratings表示每个孩子的评分。你需要按照以下要求,给这些孩子分发糖果:每个孩子至少分配到1个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。请你给每个孩子分发糖果,计算并返回需要准备的最少糖果数目。intcandy(vector&ratings){intmint=ratings[0];intn=ratings.size();for(inti=0;ians(n
cynicism??
·
2024-02-07 17:25
C++练手
leetcode
算法
数据结构
力扣
刷题-238.除自身以外数组的乘积
给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据保证数组nums之中任意元素的全部前缀元素和后缀的乘积都在32位整数范围内。请不要使用除法,且在O(n)时间复杂度内完成此题classSolution{public:vectorproductExceptSelf(vector&nums){intn=nums.size(
cynicism??
·
2024-02-07 17:54
C++练手
leetcode
算法
职场和发展
力扣
刷题-13.罗马数字转整数
罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符数值I1V5X10L50C100D500M1000例如,罗马数字2写做II,即为两个并列的1。12写做XII,即为X+II。27写做XXVII,即为XX+V+II。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如4不写做IIII,而是IV。数字1在数字5的左边,所表示的数等于大数5减小数1得到的数值4。同样地,数字9表示为
cynicism??
·
2024-02-07 17:52
C++练手
leetcode
算法
职场和发展
leetcode--64--最小路径和
链接:https://leetcode-cn.com/problems/minimum-path-sum思路:1、采用
动态规划
的思想,从左上角走到右
minningl
·
2024-02-07 16:47
【组合数学】【
动态规划
】【前缀和】1735生成乘积数组的方案数
作者推荐【
动态规划
】【状态压缩】【2次选择】【广度搜索】1494.并行课程II本文涉及知识点
动态规划
汇总C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例包括课程视频组合数学LeetCode1735
闻缺陷则喜何志丹
·
2024-02-07 15:20
#
算法题
动态规划
算法
c++
力扣
组合数学
前缀和
数目
【
动态规划
】【图论】【C++算法】1928规定时间内到达终点的最小花费
作者推荐【
动态规划
】【状态压缩】【2次选择】【广度搜索】1494.并行课程II本文涉及知识点
动态规划
汇总LeetCode1928.规定时间内到达终点的最小花费一个国家有n个城市,城市编号为0到n-1,题目保证所有城市都由双向道路连接在一起
闻缺陷则喜何志丹
·
2024-02-07 15:20
#
算法题
算法
动态规划
图论
c++
力扣
最小
旅行
【
动态规划
】【子序列除重】【C++算法】1987不同的好子序列数目
作者推荐【
动态规划
】【状态压缩】【2次选择】【广度搜索】1494.并行课程II本文涉及知识点
动态规划
汇总LeetCode1987:不同的好子序列数目给你一个二进制字符串binary。
闻缺陷则喜何志丹
·
2024-02-07 15:16
#
算法题
算法
动态规划
c++
力扣
数论
二进制
数目
LeetCode 993. 二叉树的堂兄弟节点
截止到目前我已经写了600多道
算法题
,其中部分已经整理成了pdf文档,目前总共有1000多页(并且还会不断的增加),大家可以免费下载下载链接:https://pan.baidu.com/s/1hjwK0ZeRxYGB8lIkbKuQgQ
数据结构和算法
·
2024-02-07 14:22
数据结构和算法
leetcode
数据结构
算法
二叉树
堂兄弟节点
LeetCode 2641. 二叉树的堂兄弟节点 II:层序遍历并记下兄弟节点
【LetMeFly】2641.二叉树的堂兄弟节点II:层序遍历并记下兄弟节点
力扣
题目链接:https://leetcode.cn/problems/cousins-in-binary-tree-ii/给你一棵二叉树的根
Tisfy
·
2024-02-07 14:20
题解
#
力扣LeetCode
leetcode
题解
二叉树
层序遍历
哈希表
10分钟快速入门正则表达式
在
力扣
上看了一本付费书籍,终于让我入门了正则表达事...问题:"^1[3-9]\\d{9}$"是啥意思读完本篇小笔记,你就知道,啥是"^1[3-9]\\d{9}$"这个是啥意思了。
程序员大雨
·
2024-02-07 14:19
数据库
C语言——移除元素(三种方法)
目录前言一.暴力遍历二.临时数组三.双指针法(推荐)前言https://leetcode.cn/problems/remove-element/这是
力扣
上的一道简单题,我们可以根据前面所讲的顺序表中的删除来实现
只能写一点点_
·
2024-02-07 14:15
C&C++题解
c语言
数据结构
开发语言
vscode
经验分享
笔记
算法
力扣
:78. 子集
回溯解法思路:1.跟前面的组合题目有相同的点,主要区别在于:组合题目是遍历到符合条件的组合时加入li1集合中,子集题目是每递归一次就要把结果加入到li1集合中,并遍历但nums数组的最后。其他点和组合问题一样。classSolution{//接收所有的子集List>li1=newArrayListli2=newArrayList>subsets(int[]nums){//调用回溯函数huisu(n
AnDanXingKo
·
2024-02-07 13:18
回溯
leetcode
算法
代码随想录算法训练营第三十三天|509. 斐波那契数 ,● 70. 爬楼梯 , 746. 使用最小花费爬楼梯
确定dp数组(dptable)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组代码随想录视频:从此再也不怕
动态规划
了,
动态规划
解题方法论大曝光!
白白白揍粽
·
2024-02-07 13:35
算法
代码随想录算法训练营第三十四天|62.不同路径 , 63. 不同路径 II
确定dp数组(dptable)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组62.不同路径代码随想录视频讲解:
动态规划
中如何初始化很重要!
白白白揍粽
·
2024-02-07 13:35
算法
代码随想录算法训练营第三十五天|343. 整数拆分 , 96.不同的二叉搜索树
343.整数拆分代码随想录视频讲解:
动态规划
,本题关键在于理解递推公式!
白白白揍粽
·
2024-02-07 13:35
算法
代码随想录算法训练营第三十六天|背包问题
|
动态规划
经典问题|数据结构与算法_哔哩哔哩_bilibilipublicclassBagProblem{publicstaticvoidmain(String[]args){int[]weight={
白白白揍粽
·
2024-02-07 13:34
算法
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他