LeetCode-1313解压缩编码列表

这是我做过的一个题,我把它分享给你们:

这是原文链接:https://leetcode-cn.com/problems/decompress-run-length-encoded-list/

如果感觉我做的还行的话,记得点赞。

思路分析:

这道题是让我们考虑每对相邻的两个元素,每一对都表示解压后有a个值为b的元素。

1.遍历nums数组中偶数角标,把每个角标加起来,这就能得到一个新数组的长度;

2.遍历nums数组中奇数角标,获取需要被多次写入的数据。

这道题就解决完成了,下面是我的网页的代码,主函数我就不写了,要验证的话自己编个主函数验证下:

class Solution {
    public int[] decompressRLElist(int[] nums) {
        int len = 0;
        for(int i = 0;i < nums.length;i+=2){
            len+=nums[i];
        }
        int[] newArr = new int[len];
        int index = 0;
        for(int i = 1;i <= nums.length;i+=2){
            for(int j = 0;j < nums[i - 1];j++){
                newArr[index++] = nums[i];
            }
        }
        return newArr;
    }
}
发布了38 篇原创文章 · 获赞 51 · 访问量 1188

猜你喜欢

转载自blog.csdn.net/xweiwxh/article/details/104462873
今日推荐