欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > day36||452. 用最少数量的箭引爆气球435. 无重叠区间 763.划分字母区间

day36||452. 用最少数量的箭引爆气球435. 无重叠区间 763.划分字母区间

2024/10/25 9:40:07 来源:https://blog.csdn.net/xburner01/article/details/139665415  浏览:    关键词:day36||452. 用最少数量的箭引爆气球435. 无重叠区间 763.划分字母区间

452. 用最少数量的箭引爆气球

class Solution {public int findMinArrowShots(int[][] points) {//Arrays.sort(points,(a,b)->a[0]-b[0]);//这句话会溢出Arrays.sort(points,(a,b)->Integer.compare(a[0],b[0]));int count = 1;for(int i = 1;i<points.length;i++){if(points[i][0]>points[i-1][1]){count++;}else{points[i][1] = Math.min(points[i-1][1],points[i][1]);}}return count;}
}

435. 无重叠区间 

class Solution {public int eraseOverlapIntervals(int[][] intervals) {Arrays.sort(intervals,(a,b)->Integer.compare(a[0],b[0]));int count = 0;for(int i = 1;i<intervals.length;i++){if(intervals[i][0]<intervals[i-1][1]){count++;intervals[i][1] = Math.min(intervals[i][1],intervals[i-1][1]);}}return count;}
}

763.划分字母区间

跟卡尔的写法稍微有些区别,但是无伤大雅。

class Solution {public List<Integer> partitionLabels(String s) {int[] hash = new int[26];for(int i = 0;i<s.length();i++){hash[s.charAt(i)-'a'] = i;}List<Integer> res = new ArrayList<>();int count = 0;int max = 0;for(int i = 0;i<s.length();i++){max = Math.max(hash[s.charAt(i)-'a'],max);count++;if(i == max){res.add(count);count = 0;}}return res;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com