• 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:如何对重叠区间进行
  • 2024-08-01Day 30 贪心算法 Part04
    452.用最少数量的箭引爆气球自己写没写出来,不过找到篇很好的题解,贪心想不到就是想不到,没办法。本以为自己的思路也是贪心,但就是做不出来。classSolution{publicintfindMinArrowShots(int[][]points){boolean[]visited=newboolean[points.length];
  • 2024-07-21代码随想录算法训练营第34天 | 贪心算法 5:56.合并区间、738.单调递增的数字
    56.合并区间https://leetcode.cn/problems/merge-intervals/description/代码随想录https://programmercarl.com/0056.合并区间.html738.单调递增的数字https://leetcode.cn/problems/monotone-increasing-digits/description/代码随想录https://programmercarl.com/0738.
  • 2024-07-08Studying-代码随想录训练营day31| 56.合并区间、738.单调递增的数字、968.监控二叉树、贪心算法总结
    第31天,贪心最后一节(ง•_•)ง
  • 2024-07-08力扣常用c++操作
    数字转字符串to_string()自定义sort函数sort(intervals.begin(),intervals.end(),[](vector<int>&v1,vector<int>&v2){returnv1[0]<v2[0];});自定义二分查找autoinsertit=lower_bound(intervals.begin(),intervals.end(),newInterval[0],
  • 2024-07-05Studying-代码随想录训练营day30| 452.用最少数量的箭引爆气球、435.无重叠区间、763.划分字母区间
    第30天,贪心part04,加油,编程语言:C++目录452.用最少数量的箭引爆气球435.无重叠区间 763.划分字母区间 总结 452.用最少数量的箭引爆气球文档讲解:代码随想录用最少数量的箭引爆气球视频讲解:手撕用最少数量的箭引爆气球题目:学习:根据题干,很直观的贪心逻辑就是尽可