码迷,mamicode.com
首页 > 其他好文 > 详细

228. Summary Ranges

时间:2016-06-14 14:11:11      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

    /*
     * 228. Summary Ranges
     * 12.7 by Mingyang
     * 这个题目虽然看似简单,其实不然,这里的i必须得取到最后一位的后面一位
     * 这样的话我们才可以判断最后只剩的那一位如何归属
     * 不然最后一位始终是一个问题
     */
    public static List<String> summaryRanges(int[] nums) {
        List<String> result = new ArrayList<String>();
        if (nums == null || nums.length == 0) {
            return result;
        }
        int pre = nums[0];
        int range = 0;
        for (int i = 1; i <= nums.length; i++) {
            if (i != nums.length && nums[i - 1] == nums[i] - 1) {
                range++;
            } else {
                if (range == 0) {
                    result.add(Integer.toString(pre));
                } else {
                    result.add(Integer.toString(pre) + "->" + Integer.toString(pre + range));
                }
                if (i != nums.length) {
                    pre = nums[i];
                    range = 0;
                }
            }
        }
        return result;
    }

 

228. Summary Ranges

标签:

原文地址:http://www.cnblogs.com/zmyvszk/p/5583425.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!