解压缩编码列表

给你一个以行程长度编码压缩的整数列表 nums 。

考虑每对相邻的两个元素 [a, b] = [nums[2*i], nums[2*i+1]] (其中 i >= 0 ),每一对都表示解压后有 a 个值为 b 的元素。

请你返回解压后的列表。

示例:

输入:nums = [1,2,3,4]
输出:[2,4,4,4]
解释:第一对 [1,2] 代表着 2 的出现频次为 1,所以生成数组 [2]。
第二对 [3,4] 代表着 4 的出现频次为 3,所以生成数组 [4,4,4]。
最后将它们串联到一起 [2] + [4,4,4] = [2,4,4,4]

参考代码:

class Solution:

def decompressRLElist(self, nums):

list1 = []

for i in range(0, len(nums), 2):  # 提取前数位

for b in range(nums[i]):

list1.append(nums[i + 1])

return list1

原文地址:https://www.cnblogs.com/HackerEarl/p/12344641.html

时间: 2024-10-19 16:39:16

解压缩编码列表的相关文章

Leetcode1313 Decompress Run-Length Encoded List(解压缩编码列表)

public int[] decompressRLElist(int[] nums) { int[] result = new int[1000]; int k = 0; for (int i = 0; i < (nums.length / 2); i++) { for (int j = 0; j < nums[2 * i]; j++) { result[k] = nums[2 * i + 1]; k++; } } /*System.out.println("输入解码后的数组数据&q

1313. 解压缩编码列表 - c

/** * Note: The returned array must be malloced, assume caller calls free(). */ int* decompressRLElist(int* nums, int numsSize, int* returnSize){ if (nums == NULL) return NULL; *returnSize = 0; for (int i = 0; i < numsSize; i += 2) (*returnSize) += n

对GBK的理解(内附全部字符编码列表)

由于GB 2312-80只收录6763个汉字,有不少汉字,如部分在GB 2312-80推出以后才简化的汉字(如“啰”),部分人名用字(如中国前总理朱镕基的“镕”字),台湾及香港使用的繁体字,日语及朝鲜语汉字等,并未有收录在内.于是厂商微软利用GB 2312-80未使用的编码空间,收录GB 13000.1-93全部字符制定了GBK编码. 其使用范围如下(注意是汉字编码表,不包括符号编码): 表1 汉字编码范围 名称 第一字节 第二字节 GB2312 0xB0-0xF7(176-247) 0xA0-

Encoding.GetEncoding 编码列表

代码页 名称 显示名称   37 IBM037 IBM EBCDIC(美国 - 加拿大)   437 IBM437 OEM 美国   500 IBM500 IBM EBCDIC(国际)   708 ASMO-708 阿拉伯字符 (ASMO 708)   720 DOS-720 阿拉伯字符 (DOS)   737 ibm737 希腊字符 (DOS)   775 ibm775 波罗的海字符 (DOS)   850 ibm850 西欧字符 (DOS)   852 ibm852 中欧字符 (DOS)  

Linux下查看文件编码,文件编码格式转换和文件名编码转换

linux相关   2008-10-07 10:46   阅读1392   评论0   字号: 大大  中中  小小  如果你需要在Linux中 操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是 UTF-8.下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换. 查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1.在Vim中可以直接查看文件编码 :set file

url 编码(percentcode 百分号编码)

http://www.imkevinyang.com/2009/08/%E8%AF%A6%E8%A7%A3javascript%E4%B8%AD%E7%9A%84url%E7%BC%96%E8%A7%A3%E7%A0%81.html 摘要 本文主要针对URI编解码的相关问题做了介绍,对Url编码中哪些字符需要编码.为什么需要编码做了详细的说明,并对比分析了Javascript 中和编解码相关的几对函数escape / unescape,encodeURI / decodeURI和encodeUR

(转)剖析Linux文件编码的查看及修改

Linux文件编码的查看和修改都有不止一种做法,如果你需要在Linux中操作windows下的文件,那么很可能会经常遇到文件编码转换的问题,如何进行这项工作,也应该是经常工作在双系统下的操作者的必须掌握的知识. Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换. 查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1.在Vim中可以直接查看文件编码 :set fileen

哈夫曼编码算法思想总结

1构建哈夫曼树. (利用队列的数据结构,不断获取最小的两个,退出队列并使之成为新节点的左右子树.然后将新节点插入队列.如此循环……) 根据用户输入的字符串,统计每个字符出现次数.设置权重.建立队列.队列中的节点是二叉树的节点(有左指针,和右指针). 建新的结点,左右指针指向队列的最后两个(那两个退出队列).然后插入队列.如此循环,就可以建立哈夫曼树. 2为每个字符编码. 节点的左为0,右为1. code(*node) { //叶节点 如果(node->left==null && no

linux下查看文件编码及修改编码

http://blog.csdn.net/jnbbwyth/article/details/6991425 查看文件编码在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容: set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 这样,就可以