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动态规划
【
LeetCode
】90. 子集 II(中等)——代码随想录算法训练营Day28
题目链接:90.子集II题目描述给你一个整数数组nums,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。返回的解集中,子集可以按任意顺序排列。示例1:输入:nums=[1,2,2]输出:[[],[1],[1,2],[1,2,2],[2],[2,2]]示例2:输入:nums=[0]输出:[[],[0]]提示:1a-b);constres=[];//结果数组con
晴雪月乔
·
2024-02-07 09:03
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
代码随想录算法训练营第四十四天(
动态规划
篇)|343. 整数拆分,96. 不同的二叉搜索树
资料:代码随想录(programmercarl.com)343.整数拆分题目链接:343.整数拆分-力扣(
LeetCode
)思路dp[i]:分拆数字i,可以得到的最大乘积为dp[i]。
Huiwen_Z
·
2024-02-07 09:32
算法
动态规划
leetcode
python
代码随想录算法训练营第四十二天 | 背包问题
|
动态规划
经典问题|数据结构与算法_哔哩哔哩_bilibili先看文档后看视频对于面试的话,其实掌握01背包,和完全背包,就够用了,最多可以再来一个多重背包。
Yirschen
·
2024-02-07 09:32
leetcode
代码随想录算法训练营第四十五天(
动态规划
篇)|01背包
01背包理论基础学习资料:代码随想录(programmercarl.com)相关链接:题目页面(kamacoder.com)背包题目分类01背包定义有n件物品和一个最多能背重量为w的背包。第i件物品的重量是weight[i],得到的价值是value[i]。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。解法暴力解法每种物品有两种状态:取或不取,因此可以用回溯法搜索出所有组合,选出价值
Huiwen_Z
·
2024-02-07 09:29
代码随想录训练营
算法
动态规划
python
图解
LeetCode
——998. 最大二叉树 II(难度:中等)
一、题目最大树定义:一棵树,并满足:其中每个节点的值都大于其子树中的任何其他值。给你最大树的根节点root和一个整数val。就像之前的问题(654.最大二叉树)那样,给定的树是利用Construct(a)例程从列表a(root=Construct(a))递归地构建的:如果a为空,返回null。否则,令a[i]作为a的最大元素。创建一个值为a[i]的根节点root。root的左子树将被构建为Cons
爪哇缪斯
·
2024-02-07 09:36
LeetCode
-218-天际线问题
LeetCode
-218-天际线问题218.天际线问题难度困难城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度,请返回由这些建筑物形成的天际线。
蒋斌文
·
2024-02-07 08:43
LeetCode
-第171题-Excel表的序列号
1.题目描述给你一个字符串columnTitle,表示Excel表格中的列名称。返回该列名称对应的列序号。例如:A->1B->2C->3...Z->26AA->27AB->28...2.样例描述3.思路描述遍历时将每个字母与A做减法,因为A表示1,所以减法后需要每个数加1,计算其代表的数值num=字母-‘A’+1;因为有26个字母,所以相当于26进制,每26个数则向前进一位4.代码展示classS
果蛋蛋
·
2024-02-07 08:24
LeetCode
leetcode
算法
java
力扣——环形链表
142.环形链表II-力扣(
LeetCode
)这个题是要求我们判断链表是否存在环,有则返回环开始的结点,没有则返回一个NULL;废话就不说了,直入主题:/***Definitionforsingly-linkedlist
Gay~
·
2024-02-07 08:09
力扣经典面试题
链表
leetcode
数据结构
力扣 142.环形链表II
142.环形链表II-力扣(
LeetCode
)给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。
乐之殇
·
2024-02-07 08:09
力扣刷题记录
双指针
哈希表
链表
leetcode
数据结构
魔塔游戏 - 力扣(
LeetCode
)
题目描述小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量无影响。小扣初始血量为1,且无上限。假定小扣原计划按房间编号升序访问所有房间补血/打怪,为保证血量始终为正值,小扣需对房间访问顺序进行调整,每次仅能将一个怪物房间(负数的房
maybe_za
·
2024-02-07 08:08
leetcode
算法
贪心算法
leetcode
力扣 141 环形链表
141环形链表给你一个链表的头节点head,判断链表中是否有环。快慢指针如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。首先定义node结点,成员变量有当前
阿芙乐尔qq
·
2024-02-07 08:58
leetcode
链表
算法
动态规划
-0-1背包问题
算法
动态规划
-背包最优解文章目录算法
动态规划
-背包最优解前言一、
动态规划
概念描述(想多了解就看看,不想了解直接跳过)
动态规划
的核心思想可以概括为以下几个要点:二、具体case问题实例解题思路:(
动态规划
分析和解决
苏汀star
·
2024-02-07 08:23
动态规划
算法
java
算法博弈论
对于对手而言很大,然后此时轮到自己先手,那么,为了不让对手下一轮拿到比自己更多的分,此时也应该选b所以,对石头而言,它的点数,应该是两个玩家预期的点数之和,每次我们要拿的,应该是对于大家而言点数最大的石头参考
Leetcode
哇塞大嘴好帅(DaZuiZui)
·
2024-02-07 08:09
算法
java
开发语言
动态规划
——判断子序列
-SamLevenson1.题目描述2.题目分析与解析上一篇文章讲解了如何使用双指针与使用一个二维数组来解决,这篇文章我们看一看
动态规划
来解决该问题。
ALGORITHM LOL
·
2024-02-07 07:34
算法
2.6学习总结10
动态规划
知识点
动态规划
是一种解决问题的策略,适用于具有重叠子问题和最优子结构性质的问题。
动态规划
的基本思想是将原问题分解为一系列子问题,通过求解子问题的最优解来得到原问题的最优解。
᭄Yoloꦿ᭄
·
2024-02-07 07:00
学习
二叉树的锯齿形遍历,力扣
目录题目:我们直接看题解吧:快速理解解题思路小建议:解题方法:相似题目对比分析:解题分析:解题思路:补充说明:思路优化:代码实现(层序遍历+倒序):题目地址:103.二叉树的锯齿形层序遍历-力扣(
LeetCode
大数据SQLboy
·
2024-02-07 06:36
算法
数据结构
代码随想录算法训练营第三天|203.移除链表元素,707.设计链表,206.反转链表
以为是自带一个虚拟头结点的链表(平时学校学的就是“带头结点的链表”表示是有“虚拟头结点”的链表),然后平时学数据结构,用的是浙大版的数据结构,默认语言是c,还没熟悉Java定义链表,一开始还有些陌生,这里复制一下
leetcode
remember_me.
·
2024-02-07 06:27
代码随想录
链表
数据结构
java
算法
@ 代码随想录算法训练营第6周(C语言)|Day39(
动态规划
)
@代码随想录算法训练营第6周(C语言)|Day39(
动态规划
)Day39、
动态规划
(包含题目●62.不同路径●63.不同路径II)62.不同路径题目描述一个机器人位于一个mxn网格的左上角(起始点在下图中标记为
a name easy to remember
·
2024-02-07 06:41
算法
c语言
动态规划
@ 代码随想录算法训练营第7周(C语言)|Day41(
动态规划
)
@代码随想录算法训练营第7周(C语言)|Day41(
动态规划
)Day41、
动态规划
(包含题目●343.整数拆分●96.不同的二叉搜索树)343.整数拆分题目描述给定一个正整数n,将其拆分为至少两个正整数的和
a name easy to remember
·
2024-02-07 06:39
算法
c语言
动态规划
LeetCode
:8. 字符串转换整数 (atoi)直白思路求解
题目:8.字符串转换整数(atoi)描述:请你来实现一个atoi函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字-符组合起来,形成一个有符号整数。假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成一个整数。该字符串在有效的
天降小纸箱
·
2024-02-07 05:03
简单的自我介绍
为了学好编程,我愿意每天花2小时及以上的时间去学习,通过刷题(
LeetCode
、牛客网)和做一些项目来将学习到的知识进行应用,以后就业的话,还没有确定,但是想进入华为等一些知名公司。
添砖java‘’
·
2024-02-07 04:32
c语言
背包问题--
动态规划
总结
参考《背包九讲》《解
动态规划
题的基本思考方式》一、0-1背包问题题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。
玻璃晴朗_贾
·
2024-02-07 04:00
169. 多数元素
题目:
LeetCode
169.多数元素代码:classSolution{publicintmajorityElement(int[]nums){Arrays.sort(nums);returnnums[
踏遍三十六岸
·
2024-02-07 04:47
算法
leetcode
数据结构
LeetCode
打家劫舍
198.打家劫舍你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你不触动警报装置的情况下,一夜之内能够偷窃到的最高金额。classSolution{publicintrob(int[]nums){intpre=0;i
踏遍三十六岸
·
2024-02-07 04:47
算法
leetcode
数据结构
LeetCode
丑数
264.丑数II给你一个整数n,请你找出并返回第n个丑数。丑数就是质因子只包含2、3和5的正整数。classSolution{publicintnthUglyNumber(intn){int[]dp=newint[n];dp[0]=1;inta=0;intb=0;intc=0;for(inti=1;i
踏遍三十六岸
·
2024-02-07 04:44
java
精选力扣500题 第49题
LeetCode
110. 平衡二叉树【c++详细题解】
目录1、题目2、思路3、c++代码4、java代码1、题目给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。示例1:输入:root=[3,9,20,null,null,15,7]输出:true示例2:输入:root=[1,2,2,3,3,null,null,4,4]输出:false示例3:输入:root=[]输
林小鹿@
·
2024-02-07 04:10
LeetCode题解
二叉树
力扣
数据结构与算法
递归
精选力扣500题 第50题
LeetCode
543. 二叉树的直径【c++详细题解】
目录1、题目2、思路3、c++代码4、java代码1、题目给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。示例:给定二叉树1/\23/\45返回3,它的长度是路径[4,2,1,3]或者[5,2,1,3]。注意:两结点之间的路径长度是以它们之间边的数目表示。2、思路(递归,树的遍历)O(n)O(n)O(n)在这道题目中
林小鹿@
·
2024-02-07 04:10
LeetCode题解
二叉树
数据结构与算法
力扣
高频面试题
二叉树的最大深度,最小深度两种解法(C++)
刷题我的主页:脑子不好的小菜鸟文章特点:关键点和步骤讲解放在代码相应位置前言:若想看更详细的二叉树相关题目,请移步:二叉树经典题题解(超全题目)(力扣)-CSDN博客104.二叉树的最大深度https://
leetcode
.cn
脑子不好的小菜鸟
·
2024-02-07 04:07
刷题
c++
c语言
算法
二叉树经典题题解(超全题目)(力扣)
✨欢迎来到脑子不好的小菜鸟的文章✨创作不易,麻烦点点赞哦所属专栏:刷题我的主页:脑子不好的小菜鸟文章特点:关键点和步骤讲解放在代码相应位置144.二叉树的前序遍历题目链接:https://
leetcode
.cn
脑子不好的小菜鸟
·
2024-02-07 04:36
刷题
算法
c++
leetcode
Leetcode
1129. 颜色交替的最短路径(无权图的最短路径 + 广度优先搜索)
问题描述在一个有向图中,节点分别标记为0,1,...,n-1。这个图中的每条边不是红色就是蓝色,且存在自环或平行边。red_edges中的每一个[i,j]对表示从节点i到节点j的红色有向边。类似地,blue_edges中的每一个[i,j]对表示从节点i到节点j的蓝色有向边。返回长度为n的数组answer,其中answer[X]是从节点0到节点X的最短路径的长度,且路径上红色边和蓝色边交替出现。如果
进击的Lancelot
·
2024-02-07 04:16
2806: [Ctsc2012]Cheat(后缀自动机+单调队列优化
动态规划
+二分查找)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2806第一道后缀自动机额。。。SAM预处理,二分L,然后DP判定,用单调队列优化。代码(PS:好像网上很多代码都是有问题的,就是答案为1时会输出2。。。):#include#include#includeusingnamespacestd;#definerep(i,x)for(inti=0;i+
AmadeusChan
·
2024-02-07 03:33
[
LeetCode
109] Convert Sorted List to Binary Search Tree (medium)
Givenasinglylinkedlistwhereelementsaresortedinascendingorder,convertittoaheightbalancedBST.Forthisproblem,aheight-balancedbinarytreeisdefinedasabinarytreeinwhichthedepthofthetwosubtreesofeverynodeneve
灰睛眼蓝
·
2024-02-07 03:23
LeetCode
-21:合并两个有序链表
思路:
LeetCode
的官方答案给的通俗易懂,用递归的方法,每次比较两个链表的头结点,最小的那个与之后的合并链表相结合。这也是第一次遇到java链表的数据结构的题解,用的官方题解的代码。
evenmis
·
2024-02-07 03:41
LeetCode
链表
java
LeetCode
-21:合并两个有序链表(Java语言实现)
/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,ListNodenext){this.val=val;this.next=next;}*}*/classSolution
藤原豆腐的拓海
·
2024-02-07 03:11
leetcode
链表
java
算法
数据结构
LeetCode
-83:删除排序链表中的重复元素(Java语言实现)
/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,ListNodenext){this.val=val;this.next=next;}*}*/classSolution
藤原豆腐的拓海
·
2024-02-07 03:10
leetcode
链表
java
算法
数据结构
LeetCode
-82:删除排序链表中的重复元素(Java语言实现)
/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,ListNodenext){this.val=val;this.next=next;}*}*/classSolution
藤原豆腐的拓海
·
2024-02-07 03:10
leetcode
链表
java
数据结构
算法
LeetCode
-35:搜索插入位置(Java语言实现)
classSolution{publicintsearchInsert(int[]nums,inttarget){inti=0,j=nums.length;intmid;while(i+1>>1;if(nums[mid]
藤原豆腐的拓海
·
2024-02-07 03:40
leetcode
java
算法
排序算法
数据结构
笔记
LeetCode
-21:合并两个有序链表(Java语言实现)
/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,ListNodenext){this.val=val;this.next=next;}*}*/classSolution
藤原豆腐的拓海
·
2024-02-07 03:07
leetcode
链表
java
数据结构
算法
LFU算法
LFU算法LeastFrequentlyUsed(最不频繁使用)
Leetcode
有原题,之前手写过LRU,数据结构还是习惯于用java实现,实现是copy的评论题解。
Dominiczz
·
2024-02-07 02:16
算法题
算法
java
第 383 场
LeetCode
周赛题解
A边界上的蚂蚁模拟classSolution{public:intreturnToBoundaryCount(vector&nums){ints=0;intres=0;for(autox:nums){s+=x;if(s==0)res++;}returnres;}};B将单词恢复初始状态所需的最短时间I枚举:若经过iii秒后wordwordword可以恢复到其初始状态,则说明wordwordword
xhchen2023
·
2024-02-07 02:07
LeetCode
leetcode
算法
模拟
枚举
字符串哈希
第 123 场
LeetCode
双周赛题解
A三角形类型II三条边能构成三角形的充要条件是任意一边都小于其余两边之和,枚举各边判断能否构成三角形,若能再判断是否存在边想等classSolution{public:stringtriangleType(vector&nums){ints=accumulate(nums.begin(),nums.end(),0);for(inti=0;i=s-nums[i])return"none";if(nu
xhchen2023
·
2024-02-07 02:36
LeetCode
leetcode
算法
枚举
前缀和
哈希表
二分
有序集合
LeetCode
:1696. 跳跃游戏 VI(DP, Java)
目录1696.跳跃游戏VI题目描述:实现代码与解析:一眼dp(超时,后面给出优化思路和代码)原理思路:优化后代码:1696.跳跃游戏VI题目描述:给你一个下标从0开始的整数数组nums和一个整数k。一开始你在下标0处。每一步,你最多可以往前跳k步,但你不能跳出数组的边界。也就是说,你可以从下标i跳到[i+1,min(n-1,i+k)]包含两个端点的任意位置。你的目标是到达数组最后一个位置(下标为n
Cosmoshhhyyy
·
2024-02-07 02:05
LeetCode
leetcode
算法
Leetcode
-494-目标和
题目image.png题解题解1classSolution{publicintfindTargetSumWays(int[]nums,intS){returndfs(nums,S,0,0);}privateintdfs(int[]nums,intS,intindex,intsum){if(index==nums.length){if(sum==S){return1;}return0;}//retu
一个人的世界_8575
·
2024-02-07 02:29
Leetcode
No.392 判断子序列
题目大意给定字符串s和t,判断s是否为t的子序列。你可以认为s和t中仅包含英文小写字母。字符串t可能会很长(长度~=500,000),而s是个短字符串(长度<=100)。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。示例1:s="abc",t="ahbgdc"返回true.示例2
不要甜的红烧肉
·
2024-02-07 01:04
动态规划
C语言
#include#include#definemax(a,b)((a)>(b)?(a):(b))intknapsack(intW,intwt[],intval[],intn){inti,w;intK[n+1][W+1];//填充K()()数组//遍历每一个物品和背包容量for(i=0;i<=n;i++){for(w=0;w<=W;w++){if(i==0||w==0){K[i][w]=0;}els
陇院第一Sweet Baby
·
2024-02-07 01:20
算法
数据结构
c语言
动态规划
2.6学习总结
这种算法是基于
动态规划
的思想:m[i][j]表示从i到j这条边的距离,dp[k][i][j]表示从i到j且经过{0,1,...,k-1}中若干点的最短路径。
啊这泪目了
·
2024-02-07 01:14
学习
[
LeetCode
208] 实现 Trie (前缀树)
208.实现Trie(前缀树)字典树转自评论中某大佬,加入了一个preorder可以查看一下树的构造是不是对的注意:search和startsWith只差了最后一句return。因为insert的时候插入的是word,最后一个字符结点会保留isWord=true,但是中间的就不一定了,所以startsWith直接返回true,search返回t->isWord#include#include#in
来到了没有知识的荒原
·
2024-02-07 01:27
代码随想录算法训练营DAY13 | 栈与队列 (3)
一、
LeetCode
239滑动窗口最大值题目链接:239.滑动窗口最大值https://
leetcode
.cn/problems/sliding-window-maximum/思路:使用单调队列,只保存窗口中可能存在的最大值
橙南花已开
·
2024-02-07 01:59
代码随想录算法训练营
算法
leetcode
数据结构
算法设计与分析-习题-
动态规划
法求解多段图的最短路径问题(
动态规划
法)
问题描述用
动态规划
法求解如图所示多段图中从顶点0到9的最短路径。
呆毛小叮
·
2024-02-07 00:15
算法设计与分析
算法
动态规划
算法总结
**
动态规划
算法总结**文章目录
动态规划
算法总结前言一、概念理解二、题目特点三、解题步骤四、例题练习1.硬币选择2.走方格问题3.青蛙跳石头问题五、总结提升前言
动态规划
的内容在各种算法比赛或大厂面试中占据的不少的部分
S1XmKl
·
2024-02-07 00:15
算法
c语言
算法
推荐算法
动态规划
数据结构
上一页
118
119
120
121
122
123
124
125
下一页
按字母分类:
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
其他