1.问题 2.解析 3.设计 n<-|C| Q<-C //按频率递增构成队列 Q for i<-1 to n-1 do z<-Allocate-Node() z.left<-Q中最小元 //取出Q中最小元作为z的左儿子 z.right<-Q中最小元 //取出Q中最小元作为z的右儿子 f(z)<-f(x)+f(y) Insert(Q,z) return Q 4.分析 时间复杂度O(nlogn) 5.源码 最优前缀编码代码