• 2024-10-30代码随想录算法训练营day31| 56. 合并区间 738.单调递增的数字
    学习资料:https://programmercarl.com/0056.合并区间.html#算法公开课贪心PART5over学习记录:56.合并区间(也是找重叠区间,但是是跟result[-1]比,只用比右边界;更新result[-1][1]为更大值)点击查看代码classSolution(object):defmerge(self,intervals):"""
  • 2024-10-29代码随想录算法训练营day30| 452. 用最少数量的箭引爆气球 435. 无重叠区间 763.划分字母区间
    学习资料:https://programmercarl.com/0452.用最少数量的箭引爆气球.html重叠区域问题最远位置问题452.用最少数量的箭引爆气球(重叠区域;按左边界排序;i区间的左边界与i-1区间的右边界比较来确定是否重叠;更新i的右边界,取i与i-1区域右边界的最小值)点击查看代码classSolution(ob
  • 2024-10-12day25打卡
    452用最少数量的箭引爆气球classSolution{public:staticboolcmp(constvector&left,constvector&right){returnleft[0]<right[0];}intfindMinArrowShots(vector<vector>&points){sort(points.begin(),points.end(),cmp);intret=1;for
  • 2024-10-06代码随想录算法训练营 | 56. 合并区间,738.单调递增的数字
    56.合并区间题目链接:56.合并区间文档讲解︰代码随想录(programmercarl.com)视频讲解︰合并区间日期:2024-10-06想法:重叠区间类似问题Java代码如下:classSolution{publicint[][]merge(int[][]intervals){List<int[]>res=newArrayList<>();Arra
  • 2024-10-05代码随想录算法训练营 | 452. 用最少数量的箭引爆气球,435. 无重叠区间,763.划分字母区间
    452.用最少数量的箭引爆气球题目链接:452.用最少数量的箭引爆气球文档讲解︰代码随想录(programmercarl.com)视频讲解︰452.用最少数量的箭引爆气球日期:2024-10-05想法:对气球起点排序,没有重叠的箭头+1,有重叠得话将右边置为最小的右边。Java代码如下:classSolution{publ
  • 2024-09-25合并区间
    对下面的区间进行合并,实例如下:输入:intervals=[[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间[1,3]和[2,6]重叠,将它们合并为[1,6].解决问题的思路:(1)先将区间进行排序(按左区间的大小)(2)遍历整个list,如上面所示:如果3>2,就更新3为6,然后依次遍历,如果不满
  • 2024-09-14LeetCode56. 合并区间(2024秋季每日一题 16)
    以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti,endi]。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例1:输入:intervals=[[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间[1,3]
  • 2024-09-14sicp每日一题[2.9]
    Exercise2.9Thewidthofanintervalishalfofthedifferencebetweenitsupperandlowerbounds.Thewidthisameasureoftheuncertaintyofthenumberspecifiedbytheinterval.Forsomearithmeticoperationsthewidthoftheresultofcombiningtwo
  • 2024-09-11Study Plan For Algorithms - Part28
    1.跳跃游戏题目链接:https://leetcode.cn/problems/jump-game/给定一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回true;否则,返回false。classSolution:defca
  • 2024-09-11lc56.合并区间
    语言:Python关键思路:比较当前区间start和上一个不重叠区间end',如果start<=end',可以合并,新的end直接在上一个不重叠区间的end'和当前区间的end中取maxsolution:classSolution(object):defmerge(self,intervals):""":typeintervals:List[List[int]]
  • 2024-09-09数组与贪心算法——179、56、57、228(2简2中)
    179.最大数(简单)给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。解法一、自定义比较器大的排前面然后进行一个比较jpg一开始想的其实是字典序,但是测试里就败了。例如3,3
  • 2024-09-018602 区间相交问题(优先做)
    ###思路1.**输入处理**:读取区间数和每个区间的端点。2.**排序区间**:按照区间的右端点进行排序。3.**选择区间**:使用贪心算法选择不相交的区间,尽可能多地选择区间。4.**计算结果**:计算需要去掉的区间数。###细节-**排序**:将所有区间按照右端点从小到大排序。-**
  • 2024-08-2956. 合并区间(leetcode)
    https://leetcode.cn/problems/merge-intervals/description/经典题合并区间classSolution{publicint[][]merge(int[][]intervals){Arrays.sort(intervals,(a,b)->Integer.compare(a[0],b[0]));//区间合并经典题//思路是先加入第一个
  • 2024-08-29435. 无重叠区间(leetcode)
    https://leetcode.cn/problems/non-overlapping-intervals/description/贪心:思路是更新重叠的区间classSolution{publicinteraseOverlapIntervals(int[][]intervals){//区间问题,首先排序,找到发生重叠的两个区间,将右边的重叠区间移除,实际对应代码的操
  • 2024-08-2856. 合并区间【 力扣(LeetCode) 】
    一、题目描述  以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti,endi]。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。二、测试用例示例1:输入:intervals=[[1,3],[2,6],[8,10],[15,18]]输
  • 2024-08-16Day31 贪心算法part5
    目录任务56.合并区间思路738.单调递增的数字思路968.监控二叉树思路任务56.合并区间以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti,endi]。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。思路
  • 2024-08-16代码随想录 day31|| 56 合并区间,738 单调递增数字,968 监控二叉树
    56合并区间funcmerge(intervals[][]int)[][]int{ //思路先排序,然后按照后一个左区间和前一个右区间进行对比判断是否重叠,重叠扩充右区间 sort.Slice(intervals,func(i,jint)bool{ ifintervals[i][0]==intervals[j][0]{ returnintervals[i][1]<intervals[
  • 2024-08-15Day30 贪心算法part4
    目录任务452.用最少数量的箭引爆气球思路435.无重叠区间思路763.划分字母区间思路任务452.用最少数量的箭引爆气球有一些球形气球贴在一堵用XY平面表示的墙面上。墙面上的气球记录在整数数组points,其中points[i]=[xstart,xend]表示水平直径在xstart和xend之间的
  • 2024-08-12Computer Science 320 S2
    Computer Science 320 S2 – (2024)Programming Assignment 2Due: August 9th (11:59pm)RequirementsThis assignment requires you to write five efficient algorithms that processes intervals. At least threeofthemshouldbeimplementedvia
  • 2024-08-12力扣第五十七题——插入区间
    内容介绍给你一个 无重叠的 ,按照区间起始端点排序的区间列表 intervals,其中 intervals[i]=[starti,endi] 表示第 i 个区间的开始和结束,并且 intervals 按照 starti 升序排列。同样给定一个区间 newInterval=[start,end] 表示另一个区间的开始和结束。在
  • 2024-08-03数组和字符串
    数组简介1.LeetCode1991找到数组的中间位置方法1:前缀和classSolution{publicintfindMiddleIndex(int[]nums){inttol=0,s=0;for(intnum:nums)tol+=num;for(inti=0;i<nums.length;i++){
  • 2024-08-03代码随想录day31|| 56合并区间 738 递增数字
    56合并区间 力扣题目链接题目描述:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i]=[starti,endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。示例1:输入:intervals=[[1,3],[2,6],[8,10],[1
  • 2024-08-02Day 31 贪心算法 Part05
    56.合并区间区间这类问题,不是按照左端点排序就是按照右端点排序,在思考思路的时候,就从这两个方向去下手,然后再去想贪心,以及从左侧开始遍历还是右侧开始遍历。classSolution{publicint[][]merge(int[][]intervals){if(intervals.length==1)returninterva
  • 2024-08-02代码随想录算法训练营第二十六天|452. 用最少数量的箭引爆气球、435. 无重叠区间、763.划分字母区间
    写代码的第二十六天继续贪心贪心!!!452.用最少数量的箭引爆气球思路最少的弓箭引爆气球,那么就是要看有没有重复覆盖的区域,如果有的话,那么一个弓箭就能引爆重复区域的气球,所以本题就是要看有多少气球是重复的,如果重复就用一根弓箭,如果不重复就加一。解决问题1:如何判断是否
  • 2024-08-02代码随想录算法训练营第二十七天| 56. 合并区间、738.单调递增的数字
    写代码的第二十七天最后一天贪心!!!加油呀!!!56.合并区间思路这道题本质上和昨天的两道题是几乎完全一致的,都是判断重叠区间,只不过昨天的射箭那道题是统计有多少重叠区间,无重叠区间那道题是找到重叠区间然后删除,这道题是找到重叠区间然后合并。解决问题1:如何对重叠区间进行