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
PAT乙级刷题笔记
刷题笔记
12.01 贪心策略
P1090[NOIP2004提高组]合并果子/[USACO06NOV]FenceRepairG-洛谷|计算机科学教育新生态(luogu.com.cn)说最大不超过.不用高精度,好说#includeusingnamespacestd;intn,n2,a;longlonga1[10004],a2[10004],sum;intmain(){ios::sync_with_stdio(0),cin.tie(
name_S56
·
2023-12-03 04:45
学习随笔
笔记
【C++】string类模拟实现过程中值得注意的点
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode
刷题笔记
》《实训项目》《C++》《Linux》每一个不曾起舞的日子,都是对生命的辜负目录前言1.有关const的使用(1)
樊梓慕
·
2023-12-02 09:25
C++
c++
开发语言
PAT乙级
(CPP基础&STL)
万能头,库#includestring数组//string的初始化strings="abc";string(6,'A');//string取子串(起始位置,长度)strings="HelloWorld!";coutdata;data.push_back(1);coutv(10);//定义长度为10的int数组,默认10个元素均为0vectorv;v.resize(8);//先定义,后将长度设置为8
Извините.
·
2023-12-01 21:13
c++
开发语言
【LeetCode】【C++】string OJ必刷题
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode
刷题笔记
》《实训项目》《C++》《Linux》每一个不曾起舞的日子,都是对生命的辜负目录前言【LeetCode】415.字符串相加
樊梓慕
·
2023-12-01 18:23
LeetCode刷题笔记
C++
c++
开发语言
【C++】什么是模板?怎样使用模板?
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode
刷题笔记
》《实训项目》《C++》每一个不曾起舞的日子,都是对生命的辜负目录前言1.函数模板1.1函数模板概念1.2函数模板格式
樊梓慕
·
2023-12-01 18:53
C++
c++
开发语言
学习
【Linux】快速上手自动化构建工具make/makefile
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode
刷题笔记
》《实训项目》《C++》《Linux》每一个不曾起舞的日子,都是对生命的辜负目录前言1.什么是make/makefile2
樊梓慕
·
2023-12-01 18:51
Linux
自动化
运维
linux
学习
刷题笔记
leetcode 189.轮转数组(中等)
题目给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。示例1:输入:nums=[1,2,3,4,5,6,7],k=3输出:[5,6,7,1,2,3,4]解释:向右轮转1步:[7,1,2,3,4,5,6]向右轮转2步:[6,7,1,2,3,4,5]向右轮转3步:[5,6,7,1,2,3,4]示例2:输入:nums=[-1,-100,3,99],k=2输出:[3,99,-1,-
taotaoxianzi
·
2023-12-01 08:54
leetcode
leetcode
数据结构
算法
【
刷题笔记
】长度最小的子数组||二分查找||边界||数组
长度最小的子数组1题目描述https://leetcode.cn/problems/minimum-size-subarray-sum/给定一个含有n个正整数的数组和一个正整数target。找出该数组中满足其总和大于等于target的长度最小的连续子数组[numsl,numsl+1,…,numsr-1,numsr],并返回其长度。如果不存在符合条件的子数组,返回0。示例1:输入:target=7,
han1254
·
2023-11-30 19:20
算法
笔记
算法
数组
leetcode
【
刷题笔记
】串联所有单词的子串||暴力通过||滑动窗口
串联所有单词的子串1题目描述https://leetcode.cn/problems/substring-with-concatenation-of-all-words/给定一个字符串s和一个字符串数组words。words中所有字符串长度相同。s中的串联子串是指一个包含words中所有字符串以任意顺序排列连接起来的子串。例如,如果words=[“ab”,“cd”,“ef”],那么“abcdef”
han1254
·
2023-11-30 19:46
算法
笔记
数组
算法
leetcode
135-分发糖果
题目给出一组孩子评分,要求;a每个孩子至少获得一颗糖果b相邻两个孩子,评分高的孩子糖果数多问题:最少共需要多少颗糖果思路[谷歌高畅力扣
刷题笔记
]从前往后遍历,如果后一个孩子评分高,保证后一个孩子糖果数多从后往前遍历
凤源blog
·
2023-11-30 17:22
leetcode题目整理
算法
数据结构
leetcode
leetcode
刷题笔记
160.相交链表【简单】
1、哈希表ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){if(headA==NULL||headB==NULL)returnNULL;mapm;ListNode*cur=headA;while(cur){m[cur]=cur->val;cur=cur->next;}cur=headB;while(cur){if(m.find
EGNIR
·
2023-11-30 17:46
leetcode刷题笔记
复习
leetcode
链表
LeetCode
刷题笔记
Java 腾讯 链表突击 相交链表
题目官解=========================================================================给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。图示两个链表在节点c1开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后,链表必须保持其原始结构。自定
不知名做题家丶
·
2023-11-30 17:45
LeetCode
链表
java
leetcode
LeetCode
刷题笔记
——面试题 02.07. 链表相交
面试题02.07.链表相交题目描述解法(JAVA)Github分享题目描述题目地址:https://leetcode-cn.com/problems/intersection-of-two-linked-lists-lcci给定两个(单向)链表,判定它们是否相交并返回交点。请注意相交的定义基于节点的引用,而不是基于节点的值。换句话说,如果一个链表的第k个节点与另一个链表的第j个节点是同一节点(引用
世纪末的粽子
·
2023-11-30 17:15
LeetCode刷题笔记
链表
指针
java
算法
leetcode
LeetCode Java
刷题笔记
—160. 相交链表
160.相交链表给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。简单难度,这道题和剑指Offer52.两个链表的第一个公共节点是同一道题。A和B两个链表长度可能不同,但是A+B和B+A的长度是相同的,所以两个节点先遍历自己再遍历对方一定是同时结束。如果A,B相交的话A和B有一段尾巴是相同的,所以两个遍历的指针一定会同时
刘Java
·
2023-11-30 17:45
链表
leetcode
java
160.
相交链表
LeetCode
刷题笔记
——相交链表
2.相交链表难度级别:简单题目类型:链表题目描述:解题思路:双指针法:开始时用临时指针tempA,tempB分别指向headA,headB;两个临时指针分别从两个链表的起点开始遍历:若其中一个指针到达链表尾部,两指针还没相遇,就将该指针指向另一个链表的头部,继续往下走;在遍历过程中,因为两个临时指针走的路程是一样的,因此,若两个链表相交,在相交的第一个结点相遇;否则两个结点会同时到达两个链表的尾部
^ymy^
·
2023-11-30 17:13
链表
leetcode
数据结构
相交链表
刷题笔记
(c++)
写在前面参考思路刷题,验证个人思路正确性刚睡醒,,,个人思考环的思想不存在无限循环情况,注意NULL的存在题目详情编写一个程序,找到两个单链表相交的起始节点。示例1:输入:intersectVal=8,listA=[4,1,8,4,5],listB=[5,0,1,8,4,5],skipA=2,skipB=3输出:Referenceofthenodewithvalue=8输入解释:相交节点的值为8(
kngines
·
2023-11-30 17:43
leetcode
相交链表
环的思想
LeetCode
刷题笔记
160.相交链表
题目描述编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点c1开始相交。不相交总结鬼知道这是怎么想出来的,但是学会了,好像链表的有部分题都用的是最大公约数的概念写的如果链表长度相等,如果是相交的就至少会在第一次循环的最后相等如果链表长度不相等,如果是相交的就总会相交,只是可能复杂度有点高如果不相交,最后就会null==null跳出循环SampleCodepublicclassSo
XIIV13
·
2023-11-30 17:41
LeetCode笔记
Leetcode
刷题笔记
(c++)_热题 HOT 100_160. 相交链表
双指针classSolution{public:ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){unordered_sethashset;ListNode*hA=headA,*hB=headB;while(hB!=hA){hA=hA==NULL?headB:hA->next;hB=hB==NULL?headA:hB->next
大风吹~~~~~
·
2023-11-30 17:10
链表
leetcode
c++
【LeetCode
刷题笔记
】160.相交链表
创作不易,本篇文章如果帮助到了你,还请点赞关注支持一下♡>next;}returnlen;}structListNode*getIntersectionNode(structListNode*headA,structListNode*headB){if(headA==NULL||headB==NULL)returnNULL;intlen1=getlen(headA);intlen2=getlen(
天喜Studio
·
2023-11-30 17:08
【LeetCode刷题笔记】
leetcode
笔记
链表
算法
c++
学习
LeetCode
刷题笔记
Day1——9.回文数
1.回文数(原题号9)题干给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121是回文,而123不是。示例1:输入:x=121输出:true示例2:输入:x=-121输出:false解释:从左向右读,为-121。从右向左读,为121-。因此它不是一个回文数。示例3:输入:x=10输出:false解释:从右
gulugulu1103
·
2023-11-30 12:21
LeetCode
leetcode
算法
刷题笔记
day20-二叉树
106.从中序与后序遍历序列构造二叉树/***Definitionforabinarytreenode.*typeTreeNodestruct{*Valint*Left*TreeNode*Right*TreeNode*}*/funcbuildTree(inorder[]int,postorder[]int)*TreeNode{//思路1:思路采用递归的方式进行。iflen(inorder)==0|
爱飞的蚂蚁
·
2023-11-30 05:14
笔记
刷题笔记
day27-回溯算法1
理论基础77.组合classSolution:path:list=list()result:List[List[int]]=list()deftraversal(self,left:int,n:int,k:int):#终止条件if(len(self.path)==k):#这里面需要用浅拷贝,而不能是引用self.result.append(copy.copy(self.path))#print(s
爱飞的蚂蚁
·
2023-11-30 05:14
笔记
算法
刷题笔记
Hot100 33. 搜索旋转排序数组
33.搜索旋转排序数组难度:中等数组中存在一个旋转点,在中间的部分分开为左右两半,必定是一边无序,一边有序。此时,只需要在原来的算法上增加判断有序与无序的逻辑,先看看数是不是在有序的那一侧,如果不是,就到另一侧寻找classSolution{publicintsearch(int[]nums,inttarget){intleft=0,right=nums.length-1;while(left<=
春种一粒粟秋收一粒米
·
2023-11-30 01:19
算法
leetcode
数据结构
【
刷题笔记
】H指数||数组||二分查找的变体
H指数最新编辑于2023.11.29之前的代码写得有点抽象,实在抱歉,好像我自己都不理解当时自己怎么写的,现在重新更新了代码,保证好理解。1题目描述https://leetcode.cn/problems/h-index/给你一个整数数组citations,其中citations[i]表示研究者的第i篇论文被引用的次数。计算并返回该研究者的h指数。根据维基百科上h指数的定义:h代表“高引用次数”,
han1254
·
2023-11-29 20:59
算法
笔记
算法
数组
【
刷题笔记
】两数之和II_二分法||二分查找||边界||符合思维方式
两数之和II_二分法||二分查找1题目描述https://leetcode.cn/problems/two-sum-ii-input-array-is-sorted/给你一个下标从1开始的整数数组numbers,该数组已按非递减顺序排列,请你从数组中找出满足相加之和等于目标数target的两个数。如果设这两个数分别是numbers[index1]和numbers[index2],则10&&numb
han1254
·
2023-11-29 20:59
算法
数组
算法
【
刷题笔记
】分糖果||数组||暴力通过||符合思维方式||多案例分析
分发糖果文章目录分发糖果1题目描述2题目分析2.1寻找波峰波谷2.2从波底往波峰攀爬!2.2计算糖果3代码附录11题目描述https://leetcode.cn/problems/candy/n个孩子站成一排。给你一个整数数组ratings表示每个孩子的评分。你需要按照以下要求,给这些孩子分发糖果:每个孩子至少分配到1个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。请你给每个孩子分发糖果,计算
han1254
·
2023-11-29 20:58
算法
笔记
数组
算法
leetcode
【
刷题笔记
】匹配字符串||KMP||动图解析||符合思维方式
找出字符串中第一个匹配项的下标1题目描述https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。如果needle不是haystack的一部分,则返回-1。2思路
han1254
·
2023-11-29 20:55
算法
笔记
算法
数组
leetcode
贪心算法-代码随想录-
刷题笔记
基础理论什么是贪心贪心的本质是选择每一阶段的局部最优,从而达到全局最优。例如,有一堆钞票,你可以拿走十张,如果想达到最大的金额,你要怎么拿?每次拿最大的,最终结果就是拿走最大数额的钱。每次拿最大的就是局部最优,最后拿走最大数额的钱就是推出全局最优。贪心一般解题步骤贪心算法一般分为如下四步:将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解刷题的时候,手动
Wind哥
·
2023-11-29 03:20
贪心算法
笔记
算法
leetcode
c++
回溯-分割问题-代码随想录-
刷题笔记
131.分割回文串其实切割问题类似组合问题。例如对于字符串abcdef:组合问题:选取一个a之后,在bcdef中再去选取第二个,选取b之后在cdef中再选取第三个…。切割问题:切割一个a之后,在bcdef中再去切割第二段,切割b之后在cdef中再切割第三段…。1)递归函数参数递归函数参数还需要startIndex,因为切割过的地方,不能重复切割,和组合问题也是保持一致的vector>result;
Wind哥
·
2023-11-29 03:19
笔记
算法
数据结构
leetcode
c++
回溯-棋盘问题-代码随想录-
刷题笔记
51.N皇后1)递归函数参数vector>result;voidbacktracking(intn,introw,vector&chessboard){2)递归终止条件当递归到棋盘最底层(也就是叶子节点)的时候,就可以收集结果并返回了。if(row==n){result.push_back(chessboard);return;}3)单层搜索的逻辑递归深度就是row控制棋盘的行,每一层里for循环
Wind哥
·
2023-11-29 03:19
笔记
算法
leetcode
c++
数据结构
回溯算法-代码随想录-组合问题-
刷题笔记
基础理论什么是回溯法回溯法也可以叫做回溯搜索法,它是一种搜索的方式。回溯是递归的副产品,只要有递归就会有回溯。回溯函数也就是递归函数,指的都是一个函数。回溯法的效率回溯法并不是什么高效的算法。因为回溯的本质是穷举,穷举所有可能,然后选出我们想要的答案,如果想让回溯法高效一些,可以加一些剪枝的操作,但也改不了回溯法就是穷举的本质。那么既然回溯法并不高效为什么还要用它呢?因为没得选,一些问题能暴力搜出
Wind哥
·
2023-11-29 03:49
算法
笔记
leetcode
c++
代码随想录-
刷题笔记
持续记录刷题打卡。。。1.数组数组理论基础数组是存放在连续内存空间上的相同类型数据的集合文章链接:https://programmercarl.com/%E6%95%B0%E7%BB%84%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html1.二分查找(leetcode704)给定一个n个元素有序的(升序)整型数组nums和一个目标值target思路:二分查找比较简单
别找我麻烦(●—●)
·
2023-11-29 03:47
笔记
算法
力扣 (LeetCode)
刷题笔记
6. Z 字形变换 python
将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行Z字形排列。比如输入字符串为“PAYPALISHIRING”行数为3时,排列如下:PAHNAPLSIIGYIR之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。请你实现这个将字符串进行指定行数变换的函数:stringconvert(strings,intnumRows);示例1:
应天๑
·
2023-11-28 00:45
力扣
(LeetCode)
python
python
leetcode
力扣
刷题笔记
Z字形变换
前言本文是为了记录自己做题的思路,便于之后优化。正文看到题目的第一感觉是找规律:s="PAYPALISHIRING"numRows=4print(len(s))#6nprint(s[0],s[6],s[12])#6n-16n+1print(s[1],s[5],s[7],s[11],s[13])#6n+26n-2print(s[2],s[4],s[8],s[10])#6n+3print(s[3],s
delt_delta
·
2023-11-28 00:15
leetcode
算法
职场和发展
LeetCode
刷题笔记
907. 子数组的最小值之和
题目描述给定一个整数数组A,找到min(B)的总和,其中B的范围为A的每个(连续)子数组。由于答案可能很大,因此返回答案模10^9+7。示例:输入:[3,1,2,4]输出:17解释:子数组为[3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。最小值为3,1,2,4,1,1,2,1,1,1,和为17。Sample&DemoCode1
XIIV13
·
2023-11-27 22:27
LeetCode笔记
#
动态规划
牛客网
刷题笔记
——链表
反转链表描述输入一个链表,反转链表后,输出新链表的表头。输入:{4,1,2,3}返回值:{3,2,1,4}本题看似是一道很简单的题,很多人刷题之路可能是从这道题开始,但如果不看题解,能独立想清楚却并不是那么容易,此题考查的是通过对链表指针的操作,实现链表反转。建议看完实现思路后,自己画一遍过程。实现思路使用三个指针,来实现1、cur指针指向待反转链表的第一个节点2、pre指针指向已反转链表的最后一
T_T-T_T
·
2023-11-27 18:44
LeetCode刷题笔记
《程序员代码面试指南》it名企算法与数据结构题目最优解(第二版)
刷题笔记
11
由于之前看了牛客网的数据结构和算法的课程知道了左神,现在找到了这本书当作入门书做做吧,虽然书的题解都是java实现的,但好在用c++实现难度不大第二章链表问题题目一:将单链表的每k个节点之间逆序给定一个单链表的表头节点head,实现一个调整单链表的函数,是的每k个节点之间逆序,如果最后不够k个节点一组,则不调整最后几个节点方法一:利用栈结构,时间复杂度O(N),空间复杂度O(k)structLis
鶸.
·
2023-11-27 18:12
【
刷题笔记
】牛客网面试必刷101
刷题笔记
(1)
面试必刷101之链表总结题BM1反转链表BM2链表内指定区间反转BM3链表中的节点每k个一组翻转BM4合并两个排序的链表BM5合并k个已排序的链表BM6判断链表是否有环BM7链表中环的入口结点BM8链表中倒数第k个结点BM9删除链表的倒数第n个结点BM10两个链表的第一个公共结点BM11链表相加(2)BM12单链表的排序BM13判断一个链表是否为回文结构BM14链表的奇偶重排BM15删除有序链表中
AMor_05
·
2023-11-27 18:38
笔记
面试
c++
牛客网
刷题笔记
四 链表节点k个一组翻转
NC50链表中的节点每k个一组翻转题目:思路:这种题目比较习惯现在草稿本涂涂画画链表处理过程。整体思路是赋值新的链表,用游离指针遍历原始链表进行翻转操作,当游离个数等于k时,就将翻转后的链表接到新的链表后,如最后个数不满k,则将原始链表剩余节点接到新的链表后。游离的过程中,每次将当前游离的头节点赋为最新遍历的节点,同时将前一个节点链接到下一个节点。这个代码写的过程中有点绕,过程有些bug,写了个打
Lizytzh
·
2023-11-27 18:07
刷题笔记
笔记
链表
数据结构
【力扣
刷题笔记
】整数-只出现一次的数字
题目剑指OfferII004.只出现一次的数字给你一个整数数组nums,除某个元素仅出现一次外,其余每个元素都恰出现三次。请你找出并返回那个只出现了一次的元素分析本题主要是考虑到一个数,是在int范围内,那么这个数就不会超过32位,可以用一个32位的数组去表示一个数的每一位(换成2进制看)。推广:并且考虑到一个数,出现m次,那么第i位的数之和,一定可以被m整除。即出现m次的数字的第i数位之和%m一
corelone2
·
2023-11-27 18:04
leetcode
算法
职场和发展
LeetCode
刷题笔记
-28.实现strStr()
LeetCode
刷题笔记
-28.实现strStrC代码注意点prefixtable动态规划法(未完待续)结果题目C代码int*get_prefix_table(char*pp,intpsize){inti
sz66cm
·
2023-11-27 18:59
算法刷题
leetcode
c语言
算法
CF
刷题笔记
之思维切入篇--持续更新中
1.一般的数学题以及推公式的题目,都可以从比较小的点切入,从n=1逐层扩大推导,寻找符合题意的某些性质,然后从特殊到一般,将这种性质用代码的思维描述出来,从而进行求解,即可较快的找到题目的切入点。例如下面这道cf1500的组合数学题。Problem-C-Codeforces2.涉及的矩阵,坐标等因素的题型,在计算与曼哈顿距离有关的量的时候常常可以考虑将x,y等坐标分开计算,然后再进行加和,往往能简
叶飘花落
·
2023-11-27 18:52
算法
leetcode
刷题笔记
8-二叉树(未完待续)
二叉树代码随想录
刷题笔记
代码随想录(programmercarl.com)二叉树理论基础二叉树的种类在我们解题过程中二叉树有两种主要的形式:满二叉树和完全二叉树。
infinite.?
·
2023-11-27 18:20
算法笔记
leetcode
算法
数据结构
LeetCode
刷题笔记
(Two Sum II - Input array is sorted)
该题其实是前几天准备刷的题,当时由于时间不够没来及的编完,今天编完并经过一番调试后,提交也取得了很好的效果。整体感觉不算太难,下面就来具体分享一下该题的解法。具体题目如下:Givenanarrayofintegersthatisalreadysortedinascendingorder,findtwonumberssuchthattheyadduptoaspecifictargetnumber.T
Jack-He
·
2023-11-27 18:18
LeetCode刷题笔记篇
LeetCode
刷题笔记
Two
Sum
II
-
Input
array
is
so
C++
找工作
LeetCode
刷题笔记
(Non-overlapping Intervals)
刚刚刷了一道题感觉难度还行,不过这道题既可以用线性规划法解,也可以用贪心算法解,下面就分享一下刚刷的这道题吧!题目如下:题意分析:给定一个包含若干区间的集合,请尽可能少的删掉子区间以确保剩余的区间不重叠,最后返回删掉的区间个数即可。方法一(贪婪算法)先按照区间结尾排序,每次选择结尾元素最小且与前一个区间不重叠的区间,最后将区间的集合长度减去组成最长不重叠区间的区间个数(即res值)的结果返回即可。
Jack-He
·
2023-11-27 18:18
LeetCode刷题笔记篇
LeetCode刷题笔记
Non-overlapping
Intervals
LeetCode
刷题笔记
C++
【力扣热题100,个人
刷题笔记
---上】
LeetCode热题100
刷题笔记
==递归的思想==哈希表1、两数之和(简单)49、字母异位词分组(中等)128、最长连续序列(中等)双指针283.移动零(简单)11.盛最多水的容器(中等)15.三数之和
躺平的吧啦啊吧
·
2023-11-27 09:25
CPP学习
算法
leetcode
数据结构
学习
【LeetCode
刷题笔记
-87 42:接雨水(三解法)】
题目:1.首先是面积法:算出每一层的面积相加之后减去柱状图的面积就是雨水面积,这个方法是真的秒,一开始还真想不到。第一层高度为1;2.动态规划法:本质上是暴力算法的优化。对于下标i,水能到达的最大高度等于下标i两边的最大高度的最小值,下标i处能接的水的量等于下标i处的水能到达的最大高度减去height【i】。因此就用两个数组分别记录下标i时左边的最大值和右边的最大值。3.单调栈之前的笔记里面使用过
空、白、
·
2023-11-27 09:25
算法
c++
leetcode
算法
【LeetCode
刷题笔记
Java】42.接雨水
题目:给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例:输入:height=[0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释:上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接6个单位的雨水(蓝色部分表示雨水)。暴力方法publicinttrap(int[]height){intresult=
C-Liueasymoney
·
2023-11-27 09:24
LeetCode
动态规划
单调栈
leetcode
算法
动态规划
数据结构
java
Leetcode
刷题笔记
之:栈
这里写目录标题[155.最小栈](https://leetcode-cn.com/problems/min-stack/)[150.逆波兰表达式求值](https://leetcode-cn.com/problems/evaluate-reverse-polish-notation/)[394.字符串解码](https://leetcode-cn.com/problems/decode-strin
RealDuxy
·
2023-11-27 09:24
Leetcode
算法
leetcode
算法
数据结构
【
刷题笔记
】数组-双指针||覆盖||重复元素
【
刷题笔记
】数组-双指针||覆盖||重复元素目录移除元素删除有序数组中的重复项删除有序数组中的重复项II分析移除元素https://leetcode.cn/problems/remove-element
han1254
·
2023-11-27 08:52
算法
笔记
算法
数据结构
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
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
其他