228 Summary Ranges 汇总区间
2024-10-20 11:32:41
给定一个无重复元素的有序整数数组,返回数组中区间范围的汇总。
示例 1:
输入: [0,1,2,4,5,7]
输出: ["0->2","4->5","7"]
示例 2:
输入: [0,2,3,4,6,8,9]
输出: ["0","2->4","6","8->9"]
详见:https://leetcode.com/problems/summary-ranges/description/
Java实现:
class Solution {
public List<String> summaryRanges(int[] nums) {
List<String> res=new ArrayList<String>();
int n=nums.length;
int i=0;
while(i<n){
int j=1;
while(i+j<n&&nums[i+j]-nums[i]==j){
++j;
}
res.add(j==1?String.valueOf(nums[i]):String.valueOf(nums[i])+"->"+String.valueOf(nums[i+j-1]));
i+=j;
}
return res;
}
}
C++实现:
class Solution {
public:
vector<string> summaryRanges(vector<int>& nums) {
vector<string> res;
int i=0,n=nums.size();
while(i<n)
{
int j=1;
while(i+j<n&&nums[i+j]-nums[i]==j)
{
++j;
}
res.push_back(j==1?to_string(nums[i]):to_string(nums[i])+"->"+to_string(nums[i+j-1]));
i+=j;
}
return res;
}
};
参考:https://www.cnblogs.com/grandyang/p/4603555.html
最新文章
- ftp org.apache.commons.net.ftp.FTPClient 判断文件是否存在
- 中文字体font-family常用列表
- python 2.7 和3.0input区别
- ssl 握手过程【收藏】
- POJ2823 Sliding Window (单调队列)
- 小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含
- Dalvik虚拟机的启动过程分析
- mac安装GNU命令行工具
- 二分法经典习题——HDU1969
- Docker实战--部署简单nodejs应用
- 第三届山西省赛1004 一道大水题(scanf)
- MongoDB MapReduce 小例子
- Centos6.5安装mysql 5.7
- Educational Codeforces Round 53 Editorial
- dubbo直连代码示例
- 字典树(前缀树)-Java实现
- BZOJ 1528 [POI2005]sam-Toy Cars(优先队列)
- win8 学习笔记二 输出日志
- Linux-- 查看文件 more与其它
- 【转】LoadRunner常见问题整理
热门文章
- 【转】LoadRunner监控 -- Linux的17个指标
- 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM(转载)
- Android调用本地WebService
- Windows7 配置匿名Samba文件共享
- 关于mysqld_safe
- python compileall 打包发布
- appium学习【一】:pycharm运行不生成HtmlTestRunner测试报告
- 二、Log4j基本使用方法
- 使用Asp.net Identity 创建用户 、登录代码
- HDU 3944 DP? (Lucas定理)