- 2024-11-1184. 柱状图中最大的矩形
题目链接解题思路:题目乍一看没有思路,那我们来想一想如果暴力求解怎么办。最大的矩形,他总有一个高(竖着的),然后有一个宽(横着的),那我们就暴力求解每一个高,也就是每一个下标i,对应的heights[i],最大的宽是多少,然后求出所有的解后,最优的便是结果。怎么求解以heights[i]为高,最大
- 2024-10-21【贪心算法】(第六篇)
目录按⾝⾼排序(easy)题目解析讲解算法原理编写代码优势洗牌(⽥忌赛⻢)(medium)题目解析讲解算法原理编写代码按⾝⾼排序(easy)题目解析1.题目链接:.-力扣(LeetCode)2.题目描述给你⼀个字符串数组names,和⼀个由互不相同的正整数组成的数组heights。两个数组的⻓度
- 2024-10-13day41
接雨水classSolution{public:inttrap(vector&height){intret=0;stackst;st.push(0);for(inti=1;i<height.size();++i){if(height[i]<=height[st.top()]){st.push(i);}else{while(!st.empty()&&height[i]>height[st.to
- 2024-10-05Leetcode 1631. 最小体力消耗路径
1.题目基本信息1.1.题目描述你准备参加一场远足活动。给你一个二维rowsxcolumns的地图heights,其中heights[row][col]表示格子(row,col)的高度。一开始你在最左上角的格子(0,0),且你希望去最右下角的格子(rows-1,columns-1)(注意下标从0开始编号)。你每次可以往
- 2024-09-30侧边导航,左右两边联动
实现效果:左侧是导航,右边根据点击导航滚动到指定位置,右侧滚动到某个位置,左侧也要跟着变化。使用的是原生微信小程序,使用了vant-weapp的侧边导航组件<viewclass="content"><scroll-viewscroll-yclass="left"show-scrollbar="{{false}}"enhanced><van-sidebaracti
- 2024-09-25Study Plan For Algorithms - Part42
1.删除排序链表中的重复元素给定一个已排序的链表的头head,删除所有重复的元素,使每个元素只出现一次。返回已排序的链表。classSolution:defdeleteDuplicates(self,head:Optional[ListNode])->Optional[ListNode]:ifnothead:returnhe
- 2024-09-03第十章 单调栈 Part2
目录任务42.接雨水思路84.柱状图中最大的矩形思路任务42.接雨水给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。思路按照横向计算,单调栈的思路得到left和right,然后得到h和w,最终累加结果。classSolution:deftrap(se
- 2024-08-20「代码随想录算法训练营」第四十二天 | 单调栈 part2
42.接雨水题目链接:https://leetcode.cn/problems/trapping-rain-water/文章讲解:https://programmercarl.com/0042.接雨水.html题目难度:困难视频讲解:https://www.bilibili.com/video/BV1uD4y1u75P/题目状态:这道题目在LeetCodeTop100中做过,使用两种方法,再回顾一下思路一:单
- 2024-08-16leetcode线段树(2940. 找到 Alice 和 Bob 可以相遇的建筑)
前言经过前期的基础训练以及部分实战练习,粗略掌握了各种题型的解题思路。现阶段开始专项练习。描述给你一个下标从 0 开始的正整数数组 heights ,其中 heights[i] 表示第 i 栋建筑的高度。如果一个人在建筑 i ,且存在 i<j 的建筑 j 满足 heights[i]<heig
- 2024-08-13天际线问题
题目描述城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度,请返回 由这些建筑物形成的 天际线 。每个建筑物的几何信息由数组 buildings 表示,其中三元组 buildings[i]=[lefti,righti,heighti] 表示:lefti 是第
- 2024-08-13力扣刷题之2940.找到Alice和Bob可能相遇的建筑
题干描述给你一个下标从 0 开始的正整数数组 heights ,其中 heights[i] 表示第 i 栋建筑的高度。如果一个人在建筑 i ,且存在 i<j 的建筑 j 满足 heights[i]<heights[j] ,那么这个人可以移动到建筑 j 。给你另外一个数组 queries ,其中 queries[i]=[
- 2024-08-102024/08/10 每日一题
LeetCode2940找到Alice和Bob可以相遇的建筑方法1:线段树classSolution{staticint[]tree;//存储区间的最大值staticvoidbuild(into,intleft,intright,int[]datas){if(left==right){tree[o]=datas[left-1];
- 2024-08-05LeetCode 1631. Path With Minimum Effort
原题链接在这里:https://leetcode.com/problems/path-with-minimum-effort/description/题目:Youareahikerpreparingforanupcominghike.Youaregiven heights,a2Darrayofsize rowsxcolumns,where heights[row][col] representstheheightofcell (row,c
- 2024-07-24java中的一些经典算法code
//1.importjava.util.LinkedList;importjava.util.Queue;publicclassCandyGame{//定义一个点的类,用于记录位置和当前累计的糖果数量staticclassPoint{intx,y,steps,candies;Point(intx,inty,intsteps,intcandies){
- 2024-07-22力扣LCR 039. 柱状图中最大的矩形
思路用到了单调栈。由于最大矩形它的高一定是height数组中的其中一个值,那么我们就可以遍历数组height的值再乘上它的宽的最大值WidthMax(宽的最大值后面会讲),然后取最大值就是答案,也就是ans=max(ans,WidthMax*height[x])。那么如何求高为height[x]的宽的最大值WidthMax呢?解题过程
- 2024-07-07代码随想录算法训练营第55天 | 42. 接雨水 、84.柱状图中最大的矩形
接雨水接雨水这道题目是面试中特别高频的一道题,也是单调栈应用的题目,大家好好做做。建议是掌握双指针和单调栈,因为在面试中写出单调栈可能有点难度,但双指针思路更直接一些。在时间紧张的情况有,能写出双指针法也是不错的,然后可以和面试官在慢慢讨论如何优化。https://p
- 2024-07-05代码随想录算法训练营第五十五天 | 42.接雨水 84.柱状图中最大的矩形
42.接雨水题目链接文章讲解视频讲解思路找到当前柱子左边第一个比它高的和右边第一个比它高的柱子进行计算,右边第一个比它搞得柱子可以循环遍历得到,左边第一个比它高的柱子就是栈中下一个元素classSolution{public:inttrap(vector<int>&height){stack
- 2024-06-23Leetcode84 柱状图中最大的矩形
题目描述给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积解题思路思路一:暴力寻找,从每个位置出发,向左右两边扩散查找,若发现柱形比当前位置高,则宽度加一,组成长方形,代码实现如下,但是提交之后
- 2024-06-12(nice!!!)LeetCode 2865. 美丽塔 I(数组、单调栈)
2865.美丽塔I思路:方法一,时间复杂度0(n^2)。枚举每一个点i作为当前山脉数组的最高点。然后我们通过预处理遍历其前面和后面,来更新两个数组f1、f2。数组f1[i]:表示在满足非递减的情况下,区间0~i,以点i的高度heighs[i]为最高点所能形成的最大高度和。数组f2[i]:表示在满足非
- 2024-06-04代码随想录算法训练营Day60 | 84.柱状图中最大的矩形 | Python | 个人记录向
注:今天是代码随想录训练营的最后一天啦!!!本文目录84.柱状图中最大的矩形做题看文章以往忽略的知识点小结个人体会84.柱状图中最大的矩形代码随想录:84.柱状图中最大的矩形Leetcode:84.柱状图中最大的矩形做题无思路。看文章与42.接雨水很像,42.接雨水是找每个
- 2024-05-3160天【代码随想录算法训练营34期】第十章 单调栈part03 (84.柱状图中最大的矩形)
84.柱状图中最大的矩形classSolution:deflargestRectangleArea(self,heights:List[int])->int:s=[0]result=0heights.insert(0,0)heights.append(0)foriinrange(1,len(height
- 2024-05-25Leetcode 417. 太平洋大西洋水流问题
有一个m×n的矩形岛屿,与太平洋和大西洋相邻。“太平洋”处于大陆的左边界和上边界,而“大西洋”处于大陆的右边界和下边界。这个岛被分割成一个由若干方形单元格组成的网格。给定一个mxn的整数矩阵heights,heights[r][c]表示坐标(r,c)上单元格高于海
- 2024-05-23力扣 42.接雨水
题目描述:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例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个单位的雨水(蓝色部分表
- 2024-05-17力扣-84. 柱状图中最大的矩形
1.题目介绍题目地址(84.柱状图中最大的矩形-力扣(LeetCode))https://leetcode.cn/problems/largest-rectangle-in-histogram/题目描述给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积。 示
- 2024-04-28leetcode(力扣) 2866. 美丽塔 II
原题链接暴力做法(时间复杂度O(n^2))每次选取下标i为峰值,进行n次,对每次取max就可以找打答案对于i左边的序列:需要满足序列是非递减的,同时每个值尽可能大所以满足:下标为j的位置上的数<=下标是(j,i]的最小的值(等于时取得最大值),同时需要保证j位