(java)Summary Ranges
2016-01-08 10:42
309 查看
Given a sorted integer array without duplicates, return the summary of its ranges.
For example, given
For example, given
[0,1,2,4,5,7], return
["0->2","4->5","7"].
思路:循环遍历这个数组,如果a[i+1]<a[i]则将a[i]设置为这个范围的尾,将其入list,然后将a[i+1]设置为新的范围的开始。
代码如下(已通过leetcode)
public class Solution { public List<String> summaryRanges(int[] nums) { List<String> list=new ArrayList<String>(); if(nums.length==0) return list; boolean iscome=false; int i=1; String temp=""+nums[0]; while(i<nums.length) { iscome=true; if(nums[i]!=nums[i-1]+1) { temp+="->"; temp+=nums[i-1]; list.add(temp); temp=""+nums[i]; } i++; } if(iscome) { if(nums[i-1]==nums[i-2]+1) { temp+="->"; temp+=nums[i-1]; list.add(temp); } else list.add(""+nums[i-1]); } else{ list.add(""+temp); } String[] temps=new String[list.size()]; int k=0; while(!list.isEmpty()) { temps[k]=list.remove(0); k++; } for(k=0;k<temps.length;k++){ if(temps[k].contains("->")){ String[] split=temps[k].split("->"); if(split[0].equals(split[1])){ temps[k]=split[0]; } } } for(k=0;k<temps.length;k++) list.add(temps[k]); return list; } }
相关文章推荐
- Java常用类:字符串相关类
- SpringMVC + security模块 框架整合详解
- Java学习要点
- Spring MVC - 上傳圖片, JSON数据交互 ,RESTful 支持
- 关于DecimalFormat用法详解
- (java)Count Primes
- Spring学习笔记---1-Spring基础介绍
- Spring学习总结
- Java调试
- java开发记录
- Java动态代理(jdk代理和cglib代理)
- Java -- 内存机制
- 使用gradle做第一个java项目
- (java)Valid Palindrome
- javaweb学习总结(一):Servlet开发(一)
- 对JavaEE中session的理解
- Java-回调
- 初步了解 Java类加载子系统
- 使用Java抓取网页中所有的链接
- Spring包详解