算术编码问题
看有人讨论mathe的签名忽然想到一个制作这种数字签名的方法
使用算术编码,对不超过256个字符的一个字符串进行压缩
得到一个小数,则成为类似mathe的签名样式的编码
现在谁写一个高效的程序,输入字符
输出对应的小数的十进制表示 反过来,将一个N位长的小数解码成一个唯一的N位字符串。
如果不要求解码,楼主的问题很简单。
只要根据字符的特性分类,用某种对应的数学函数求出小数值然后加起来,将整数部分右移,得到最终的数字。 偶比较喜欢Range Coding...
偶目前有O(nlogm)的编码和O(nlogmlogm)的解码(n是长度,m是范围)...
输出对应的小数的十进制表示那不是还要把2进制结果转化到10进制... 当然是10进制
呵呵
主要是
1、这个比较有意思
2、数字总是神秘的,特别是神秘的长小数
3、体现本论坛特点 其实那个编码原理很简单的
根据概率分布把空间划分就可以了
我目前就想知道怎么能快速得到最优的分布...
页:
[1]