题解 | #牧场奶牛集合区域#

牧场奶牛集合区域

https://www.nowcoder.com/practice/89218acf98234315af1cb3a223935318

所用语言

Java

所用知识

数组

解题思路

创建list存入区间值,lissts存入list 从左到右遍历,如果不等于前一位加一,则放入数组中,并把数组list置空 最后一位不管如何放入数组中 最后放入普通二维数组中,并返回

完整代码

public int[][] findGatheringAreas (int[] groups, int n) {
    // write code here
    ArrayList<ArrayList<Integer>> lists = new ArrayList<>();
    ArrayList<Integer> list = new ArrayList<>();
    int left = groups[0], right = 0;
    list.add(left);
    for (int i = 1; i < n; i++) {
        right = groups[i];
        left = groups[i - 1];
        if (right != left + 1) {
            list.add(left);
            lists.add(list);
            list = new ArrayList<>();
            list.add(right);
        }
        if (i == n - 1) {
            list.add(right);
            lists.add(list);
        }

    }
    int[][] res = new int[lists.size()][2];
    for (int i = 0; i < lists.size(); i++) {
        for (int j = 0; j < 2; j++) {
            res[i][j] = lists.get(i).get(j);
        }
    }
    return res;
}
#牧场奶牛集合区域#
全部评论

相关推荐

04-17 10:16
门头沟学院 Java
不河狸啊:为什么我的是已送达,连已读都没有
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务