问题标签 [huffman-code]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 输入字符串压缩为字符串
我想将字符串压缩/转换为新字符串。
即:输入字符串:
压缩后的输出字符串:
解压后输出字符串:
这种转换有一些压缩或哈希方法吗?
我更喜欢使用 Java 或具有基本流程步骤的算法的一些解决方案。
我已经阅读并尝试使用霍夫曼转换,但压缩输出由字节出站 UTF-8 字符集组成。
c - 解码 JPEG Huffman 块(表)
以下块由 Huffman 块标记嵌套
0084是表格的长度,为整数,此处不包含在块中
根据JPEG标准,第一个地址aparently使其成为目标0(0x10)的AC表
显然从那里开始它是一张霍夫曼表。
那么,它是如何解码的呢?
c - 分段错误 - 自适应霍夫曼树
我正在尝试实现自适应霍夫曼代码,但是在尝试构建树时,在“currentNYT->lchild = newNYT;”行执行代码时出现分段错误 在 addnode() 函数中。
有人可以帮我吗?这可能是我不知道的简单事情。好久没用C了。
compression - 数据压缩
我有一个任务以某种方式压缩股票市场数据......数据在一个文件中,其中每天的股票价值在一行中给出,依此类推......所以它是一个非常大的文件。
例如,
123.45
234.75
345.678
889.56
......
现在的问题是如何使用 Huffman 或算术编码或 LZ 编码等标准算法压缩数据(也就是减少冗余)......哪种编码最适合这类数据??......
我注意到,如果我获取第一个数据,然后考虑每个连续数据之间的差异,差异值会有很多重复......这让我想知道是否首先获取这些差异,找到它们的频率和概率,然后使用霍夫曼编码将是一种方式??...
我是对的吗?...谁能给我一些建议。
c - 以位形式将文件写入C中的文件
我正在用 C 实现霍夫曼算法。我已经得到了基本功能,直到获得二进制码字。例如, abcd 将是 100011000 或类似的东西。现在的问题是如何在压缩文件中以二进制形式编写此代码。我的意思是如果我正常写它,每个 1 和 0 将是一个字符,所以没有压缩。
我需要以位的形式写出这些 1 和 0。在 C 语言中这可能吗?如果可以,怎么办?
huffman-code - 扩展霍夫曼码
我有这个作业:找到任何给定字母表中符号的代码字。它说我必须对三个符号组使用二进制霍夫曼。这到底是什么意思?我是否在 [字母]^3 上使用常规霍夫曼?如果是这样,那么我该如何区分一组中的 3 个符号?
algorithm - 如何解码霍夫曼树?
有没有比根据输入数字 0 或 1 向左或向右走更好的方法?
algorithm - 霍夫曼编码的实际应用是什么?
有人告诉我霍夫曼编码被用作无损数据压缩算法,但我也被告知真正的数据压缩软件不使用霍夫曼编码,因为如果密钥分布不够分散,压缩文件可能比原始文件更大文件。
这让我想知道霍夫曼编码是否有任何实际应用?
javascript - ASCII 文本字符串缩短
我对安全性或任何类似性质的东西并不真正感兴趣,但我需要一些允许我“压缩”/“解压缩”字符串的函数。我已经尝试过 Base64,但是字符串的大小有一个很大的问题,它使它更长。我也知道这个霍夫曼的东西,但这也不起作用,因为它也使它更长(在内存方面更少,它是一个整数)。
换句话说,我希望将任意字符串“djshdjkash”编码为其他字符串“dhaldhnctu”。能够从一个到另一个,并且新字符串的长度等于或小于原始字符串。
Javascript可以做到这一点,已经完成了吗?
- 需要澄清,正如我所说,安全不是目标,只是为了伪装字符串并保持其长度(或缩短它)。Base64 是最好的例子,但它使字符串更长。ROT13 很简洁,但不涵盖所有 ASCII 字符,仅涵盖字母。