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
牛客+力扣
通俗易懂:贪心算法(一):分配问题 (
力扣
455分发饼干 和135分发糖果)
看完本文,可以顺便解决leetcode以下两个题目:455.分发饼干(简单)135.分发糖果(困难)一、通俗易懂的贪心算法|思想贪心算法就是采用贪心的策略,保证每一次的操作都是局部最优的,从而使得结果是全局最优的。比如,A、B、C、都很喜欢吃橘子,A可以吃5个、B可以吃3个、C可以吃1个;但是现在只有7个橘子,问最多几个人可以吃饱;我们选用的贪心策略就是,吃的少的人先吃,尽量先使用量少的人吃饱,所
比特的一天
·
2025-02-14 02:55
leetcode详解
算法
数据结构
贪心算法
面试
分发饼干(
力扣
455)
从这道题开始我们就进入贪心算法的学习了。这个算法没有固定的套路,甚至题目之间的联系也很少,基本上每一道题都要当新题来写。我们能做的只有见多识广,这样才有机会在考试中根据以往经验解决贪心的题目。贪心的本质上就是找到局部最优解,最终的答案就是全局最优解。这道题要求尽可能分到更多的小孩,那么所谓的贪心究竟贪在什么地方呢?我们可以先将胃口和饼干的数组进行从小到大的排序,让小胃口的小孩吃到尽可能小的饼干,只
qy发大财
·
2025-02-14 01:49
leetcode
算法
职场和发展
【LeetCode】三个无重叠子数组的最大和 [H](动态规划)
689.三个无重叠子数组的最大和-
力扣
(LeetCode)一、题目给你一个整数数组nums和一个整数k,找出三个长度为k、互不重叠、且全部数字和(3*k项)最大的子数组,并返回这三个子数组。
小七mod
·
2025-02-13 16:19
#
LeetCode
#
算法
#
数据结构
leetcode
动态规划
算法
子数组
滑动窗口
[HOT 100] 1234. 替换子串得到平衡字符串
文章目录1.题目链接2.题目描述3.题目示例4.解题思路5.题解代码6.复杂度分析1.题目链接1234.替换子串得到平衡字符串-
力扣
(LeetCode)2.题目描述有一个只含有'Q','W','E','
水蓝烟雨
·
2025-02-13 16:18
算法
HOT
100
牛客
网面试必刷TOP101-08字符串BM86 大数加法
描述以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。数据范围:s.length,t.length≤100000,字符串仅由'0'~‘9’构成要求:时间复杂度O(n)示例1输入:"1","99"返回值:"100"说明:1+99=100示例2输入:"114514",""返回值:"114514"一、问题分析首先读题,仔细看描述中的内容,发现需求是1.以字符串的形式读入两个数字,编
bingw0114
·
2025-02-13 12:12
面试
职场和发展
Prettier 如何处理代码格式化
前端开发工程师、技术日更博主、已过CET6阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1
牛客
高级专题作者、打造专栏《前端面试必备》、《2024面试高频手撕题》蓝桥云课签约作者、上架课程
阿珊和她的猫
·
2025-02-13 10:34
状态模式
力扣
动态规划-28【算法学习day.122】
前言###我做这类文章一个重要的目的还是记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,
力扣
上的大佬们的题解质量是非常非常高滴!!!
南宫生
·
2025-02-13 04:16
#
动态规划
算法
算法
leetcode
动态规划
java
学习
力扣
动态规划-24【算法学习day.118】
前言###我做这类文章一个重要的目的还是记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,
力扣
上的大佬们的题解质量是非常非常高滴!!!
南宫生
·
2025-02-13 04:46
算法
#
动态规划
算法
leetcode
动态规划
学习
java
算法训练Day7| LeetCode454. 四数相加II(Map作哈希表);383.赎金信(数组作哈希表);15.三数之和(双指针);18.四数之和(双指针)
.三数之和方法一:双指针法1.思路2.代码实现3.复杂度分析4.思考Leetcode18.四数之和1.思路2.代码实现3.复杂度分析4.思考LeetCode454.四数相加链接:454.四数相加II-
力扣
努力学习的牛宁西
·
2025-02-13 04:45
代码随想录训练营
算法
散列表
leetcode
LeetCode 刷题:滑动窗口模板
文章目录
力扣
的原题引发的一连串学习扩展部分:滑动窗口解题模板第一个模板:适用于需要使用[变量]记录的情况模板:例题1:第二个模板:适用于需要用[哈希表]记录的情况模板:例题1:例2:
力扣
的原题引发的一连串学习题目链接
我心向阳iu
·
2025-02-13 04:44
#
Spring
Boot
Java面试知识点精讲
leetcode
算法
职场和发展
day28【LeetCode
力扣
】383.赎金信
day28【LeetCode
力扣
】383.赎金信以后我们每期附张图啦~~~1.题目描述附上题目链接:赎金信给你两个字符串:ransomNote和magazine,判断ransomNote能不能由magazine
Gcanfly
·
2025-02-13 03:40
leetcode
算法
职场和发展
C++算法练习-day17——383.赎金信
-
力扣
(LeetCode)题目思路分析题目要求我们判断给定的ransomNote字符串是否可以通过从magazine字符串中选取字符来构造。
Neophyte0608
·
2025-02-13 03:39
C++算法练习
c++
开发语言
1024程序员节
代码随想录||Day7 454.四数相加 383.赎金信 15.三数之和 18,四数之和
454.四数相加
力扣
题目链接题目描述给你四个整数数组nums1、nums2、nums3和nums4,数组长度都是n,请你计算有多少个元组(i,j,k,l)能满足:0&nums1,vector&nums2
henu大肠杆菌
·
2025-02-13 03:39
leetcode
算法
数据结构
哈希算法
ESLint 如何处理 ES6+ 语法
前端开发工程师、技术日更博主、已过CET6阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1
牛客
高级专题作者、打造专栏《前端面试必备》、《2024面试高频手撕题》蓝桥云课签约作者、上架课程
阿珊和她的猫
·
2025-02-12 22:32
es6
状态模式
前端
leetcode: 153. 寻找旋转排序数组中的最小值
153.寻找旋转排序数组中的最小值来源:
力扣
(LeetCode)链接:https://leetcode.cn/problems/find-minimum-in-rotated-sorted-array/
uncle_ll
·
2025-02-12 08:51
编程练习-Leetcode
leetcode
算法
二分法
遍历
算法训练
Leetcode滑动窗口刷题 - 718. 最长重复子数组
718.最长重复子数组-
力扣
(LeetCode)题目概述:给定两个长度不一定相等的数组,输出两数组的最长重复子数组的长度。
S_keo
·
2025-02-12 07:46
刷题笔记
leetcode
算法
数据结构
代码随想录 Day 29 | 【第七章 回溯算法 part02】39. 组合总和、40.组合总和II、131.分割回文串
一、39.组合总和本题是集合里元素可以用无数次,那么和组合问题的差别其实仅在于startIndex上的控制题目链接/文章讲解:代码随想录视频讲解:带你学透回溯算法-组合总和(对应「leetcode」
力扣
题目
Accept17
·
2025-02-12 06:06
算法
2021AutoX安途杯中山大学程序设计校赛 I Lucky Numbers ABCD(构造)
2021AutoX安途杯中山大学程序设计校赛ILuckyNumbersABCD(构造)
牛客
链接Solution等式[k∗x]∗[(k+1)∗(x+1)]=[(k+1)∗x]∗[k∗(x+1)][k*x]
保安在哪里啊
·
2025-02-12 00:54
2021中山大学程序设计校赛
c++
【LeetCode 热题100】74:搜索二维矩阵(二分、线性两种方式 详细解析)(Go 语言实现)
力扣
热题74:搜索二维矩阵(详细解析)题目描述
力扣
74.搜索二维矩阵给你一个满足下述两条属性的mxn整数矩阵matrix:每行中的整数从左到右按非递减顺序排列。
飞川001
·
2025-02-11 19:12
力扣LeetCode
leetcode
golang
算法
力扣
单词拆分
动态规划,字符串截取,可重复用,集合类。题目单词可以重复使用,一个单词可用多次,应该是比较灵活的组合形式了,可以想到用dp,遍历完单词后的状态的返回值。而这里的wordDict给出的是list,但可以用set,因为hashset可以去重,hashset的查找比list要快。然后就是这里的额dp数组是个boolean值,然后用截取字符串的形式去看set里能不能找到,找不到说明拼不了。时间复杂度:O(
孑么
·
2025-02-11 13:06
力扣
leetcode
算法
职场和发展
java
动态规划
力扣
LeetCode #98 验证二叉搜索树(IsValidBST)
-题目描述给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。来源:LeetCode-示例示例1:输入:2/\13输出:true示例2:输入:5/\14/\36输出:false解释:输入为:[5,1,4,null,null,3,6]。根节点的值为5,但是其
苏志林的情敌
·
2025-02-11 10:10
二叉树
leetcode
java
算法
动态规划
力扣
——单词拆分
单词拆分给你一个字符串s和一个字符串列表wordDict作为字典,判定s是否可以由空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。示例1:输入:s=“leetcode”,wordDict=[“leet”,“code”]输出:true解释:返回true因为“leetcode”可以被拆分成“leetcode”。示例2:输入:s=“applepenapple”,wordDi
不易撞的网名
·
2025-02-11 10:10
力扣中等题目集
leetcode
算法
职场和发展
[LeetCode]day10 707.设计链表
707.设计链表-
力扣
(LeetCode)题目描述你可以选择使用单链表或者双链表,设计并实现自己的链表。单链表中的节点应该具备两个属性:val和next。
因兹菜
·
2025-02-11 09:08
leetcode
链表
算法
验证二叉搜索树——
力扣
98
题目描述二叉搜索树BST定义:1)左子树节点值=上界,则不满足;否则,依次递归左子树,将上界修改为根节点值,递归右子树,将下界修改为根节点值复杂度分析classSolution
hazel爱吃肉
·
2025-02-11 09:36
算法刷题笔记
leetcode
算法
职场和发展
算法训练day51Leetcode139.单词拆分 多重背包了解 背包问题总结
-
力扣
(LeetCode)题目分析初始化:初始化一个布尔型向量dp,大小为s.size()+1,所有值初始化为false,除了dp[0]被设置为true。
dc爱傲雪和技术
·
2025-02-11 09:36
算法训练
算法
力扣
139.单词拆分
问题给你一个字符串s和一个字符串列表wordDict作为字典。请你判断是否可以利用字典中出现的单词拼接出s。例:输入:s="leetcode",wordDict=["leet","code"]输出:true解释:返回true因为"leetcode"可以由"leet"和"code"拼接成。题解动态规划1.算法思路1)确定一个dp数组,长度为字符串长度+1。该dp数组的每一位表示其前i位字符子串是否可
MarlboroLRX
·
2025-02-11 09:01
动态规划
算法
leetcode
力扣
LeetCode139.单词拆分及Python源码实现
本题目是LeetCode题库中第139题单词拆分,难度中等,题目请参考这里。本来是完成一个项目中一个问题:给定一个字符串和词典将它进行切分,且切分的每个词语都要是词典中的单词,问一共有多少种不同的切分方法。以为很简单的一个操作但是想了很久没有什么好的思路去解决,面向百度编程发现和LeetCode140.单词拆分||是一模一样的题,要解决140这道题又得先弄清楚139那道题,所以这篇文章首先解决13
一只特立丶独行的猪
·
2025-02-11 09:00
LeetCode
LeetCode
Python编程
字符串拆分
动态规划
内存限制
链表-环形链表II
代码随想录-刷题笔记142.环形链表II-
力扣
(LeetCode)内容:本题更多是考验数学,数学感觉到位了,本题可以说毫无难度如何证明是否有环:两个指针一个快,一个慢,如果能遇到,一定有环!
Hasno.
·
2025-02-11 08:59
链表
java
数据结构
LeetCodehot
力扣
热题100 验证二叉搜索树
classSolution{vectornums;//用来存储二叉树节点值的数组public:boolisValidBST(TreeNode*root){inorder(root);//中序遍历二叉树,填充nums数组//遍历nums数组,检查是否为严格递增序列for(inti=0;i=nums[i+1]){//如果当前元素不小于下一个元素,说明不是严格递增的returnfalse;//不是有效的
篮l球场
·
2025-02-11 08:58
leetcode
leetcode
算法
数据结构
字符串高频算法:无重复字符的最长子串
题目3.无重复字符的最长子串-
力扣
(LeetCode)解题思路思路方法:滑动窗口[!
Fanfffff720
·
2025-02-11 07:12
算法
每日一题——缺失的第一个整数
题目链接41.缺失的第一个正数-
力扣
(LeetCode)(leetcode-cn.com)题目描述给你一个未排序的整数数组nums,请你找出其中没有出现的最小的正整数。
gch12138
·
2025-02-11 06:36
每日一题
leetcode
c++
1024程序员节
设计循环队列---
力扣
622
1、题目1.1基础设置与讲解循环队列,即固定长度的队列,可以想象成一个环形队列就类似于这种队列,队尾指针后会有一个空位,用于控制判断队列为空还是为满;typedefintMyDataType;typedefstruct{MyDataTypefront;MyDataTyperear;MyDataType*a;MyDataTypecapacity;}MyCircularQueue;首先将int更名为M
ykcyk
·
2025-02-11 04:55
leetcode
算法
职场和发展
力扣
622(设计循环队列)
力扣
622(设计循环队列)设计你的循环队列实现。循环队列是一种线性数据结构,其操作表现基于FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。
奋斗&&奋进
·
2025-02-11 04:24
LeetCode
leetcode
数据结构
算法
Queue
力扣
622. 设计循环队列
题目设计你的循环队列实现。循环队列是一种线性数据结构,其操作表现基于FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。你的实现应该支持如下操作:MyCircularQu
冷酷的摸鱼小将
·
2025-02-11 04:20
力扣
leetcode
算法
数据结构
力扣
622.设计循环队列
力扣
622.设计循环队列通过数组索引构建一个虚拟的首尾相连的环当front=rear时队列为空当front=rear+1时队列为满(最后一位不存)classMyCircularQueue{intfront
阳光男孩01
·
2025-02-11 03:47
leetcode
算法
职场和发展
每日一题之 删除有序数组中的重复项I和II
来源:
力扣
(LeetCo
诺坎普的骄傲
·
2025-02-11 02:42
leetcode
成长历程
位运算(典型算法思想)—— OJ例题算法解析思路
目录一、面试题01.01.判定字符是否唯一-
力扣
(LeetCode)运算代码:1.鸽巢原理的优化代码片段:设计思路:2.位图(BitMap)的设计代码片段:设计思路:3.字符到位的映射代码片段:设计思路
Exhausted、
·
2025-02-11 02:04
算法
算法
开发语言
c语言
c++
力扣
面试
力扣
206 反转链表 记录
题目给你单链表的头节点head,请你反转链表,并返回反转后的链表。示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[]代码classSolution{public:ListNode*reverseList(ListNode*head){ListNode*temp;//保存cur的下一个节点
楚洋的小跟班
·
2025-02-10 17:34
leetcode
链表
算法
力扣
160 相交链表
给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。publicclassSolution{publicListNodegetIntersectionNode(ListNodeheadA,ListNodeheadB){ListNodep=headA;ListNodeq=headB;while(p!=q){p=p!=null
format_push
·
2025-02-10 17:34
leetcode
链表
算法
力扣
206:反转链表【C++】
题目分析原题:输入一个链表,反转链表后,输出新链表的表头。分析:题意非常好理解,即把一个单链表逆序。本题需要考虑的主要问题是,如何将单链表逆序。需要特别注意的是,链表所分配到的内存是一段不连续的内存空间,因此对于单一元素的取用非常麻烦。思路分析思路一:堆栈法大家对于堆栈的特性是否了解呢?堆栈的特性是“先入后出”,即先装入的元素会放在堆栈下面,后装入的元素反而在堆栈上面,因此我们可以通过一次存&取的
The Gao
·
2025-02-10 17:32
LeetCode交流
链表
堆栈
数据结构
leetcode
力扣
206反转链表
206.反转链表-
力扣
(LeetCode)(leetcode-cn.com)structListNode*reverseList(structListNode*head){//实际上是操作三个指针//形参
小白-先森
·
2025-02-10 17:01
力扣刷题
链表
反转
算法
迭代
数据结构
力扣
312场周赛:按身高排序
本文以python为编程语言,题目来源于
力扣
312届周赛题目:给你一个字符串数组names,和一个由互不相同的正整数组成的数组heights。两个数组的长度均为n。
_焱_
·
2025-02-10 17:28
力扣
python
算法
力扣
周赛:第419场周赛
作者简介:爱好技术和算法的研究生上期文章:
力扣
周赛:第415场周赛订阅专栏:
力扣
周赛希望文章对你们有所帮助因为一些特殊原因,这场比赛就打了1h,所以只AC了前面两题。
布布要成为最强的人
·
2025-02-10 16:24
力扣
测试专栏
leetcode
算法
java
lambda
数据结构
力扣
Leetcode第1534题,统计好三元组的Python解法
Description给你一个整数数组arr,以及a、b、c三个整数。请你统计其中好三元组的数量。如果三元组(arr[i],arr[j],arr[k])满足下列全部条件,则认为它是一个好三元组。0<=i
肥猫_LIL
·
2025-02-10 14:07
leetcode
链表-反转链表
代码随想录-刷题笔记LCR024.反转链表-
力扣
(LeetCode)还记得之前刚学数据结构那会被这道题吓蒙过,觉得这种题毫无意义,用双向链表可以一次性解决,之后发现这确实是很好的一道运用双...三指针的问题
Hasno.
·
2025-02-10 12:15
链表
数据结构
复原IP地址(
力扣
93)
有了上一道题分割字符串的基础,这道题理解起来就会容易很多。相同的思想我就不再赘述,在这里我就说明一下此题额外需要注意的点。首先是终止条件如何确定,上一题我们递归到超过字符串长度时,则说明字符串已经分割完毕,而这道题根据题意,相当与用‘.’来分割字符串,且出现三个点时就可以结束递归了,那么我们需要一个变量来记录点的个数。另外,在我们判断分割出来的子串是否合法时,最后出现的子串可能为空串,就是说第三个
qy发大财
·
2025-02-10 07:29
leetcode
算法
职场和发展
修剪二叉搜索树(
力扣
669)
这道题还是比较复杂,在递归上与之前写过的二叉树的题目都有所不同。如果当前递归到的子树的父节点不在范围中,我们根据节点数值的大小选择进行左递归还是右递归。为什么找到了不满足要求的节点之后,还要进行递归呢?因为该不满足要求的父节点的子树中可能存在满足要求的节点,我们要不断递归子树寻找这些满足要求的节点并向上返回,直到遇到空节点为止。注意这里递归函数的返回值为指向节点的指针,用来返回满足要求的节点。另外
qy发大财
·
2025-02-10 07:59
leetcode
算法
职场和发展
数据结构
组合(
力扣
77)
从这道题开始,我们正式进入回溯算法的学习。之前在二叉树中只是接触到了一丢丢,而这里我们将使用回溯算法解决很多经典问题。那么这道题是如何使用回溯算法的呢?在讲回溯之前,先说明一下此题是如何递归的。毕竟回溯递归不分家,必须先有递归,才会有回溯。而这里的递归就是在题目所给集合的子集中使用for循环选择数字。考虑组合的无序性(1,2和2,1是相同的组合),那么在对递归得到的子集进行遍历时,需要用变量控制f
qy发大财
·
2025-02-10 07:59
leetcode
算法
职场和发展
数据结构
力扣
LeetCode: 63 不同路径Ⅱ
题目:给定一个mxn的整数数组grid。一个机器人初始位于左上角(即grid[0][0])。机器人尝试移动到右下角(即grid[m-1][n-1])。机器人每次只能向下或者向右移动一步。网格中的障碍物和空位置分别用1和0来表示。机器人的移动路径中不能包含任何有障碍物的方格。返回机器人能够到达右下角的不同路径数量。测试用例保证答案小于等于2*10^9。示例1:输入:obstacleGrid=[[0,
不想编程小谭
·
2025-02-10 07:58
LeetCode
leetcode
算法
动态规划
c++
力扣
LeetCode: 1845 座位预约管理系统
题目:请你设计一个管理n个座位预约的系统,座位编号从1到n。请你实现SeatManager类:SeatManager(intn)初始化一个SeatManager对象,它管理从1到n编号的n个座位。所有座位初始都是可预约的。intreserve()返回可以预约座位的最小编号,此座位变为不可预约。voidunreserve(intseatNumber)将给定编号seatNumber对应的座位变成可以预
不想编程小谭
·
2025-02-10 07:57
LeetCode
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
其他