比较简单,这道题需要贪心解决. 不需要任何复杂的数据结构,一个luo的堆就足够了. 本题的意思就是:给定n种单词及在文本中各自出现的频率,要求利用二进制串对其进行前缀编码,使得压缩后的文本长度最短. 改用k进制串?最长的单个单词编码最短? 我们知道有个叫huffman编码的东西就是来解决这类编码问题的.所以尝试用huffman思想去解题. 如果编码的进制是2进制就好了,但是题目的数据只有少部分是2进制编码的, 所以我们要仿造二叉形式huffman一次弹出两个(最小值)成k叉一次弹出k个(最小值)…