论赫夫曼树效率简单篇

PS:以下数据分析是以小学生成绩为基础
假设有以下小学生成绩: 44, 88, 69, 70, 75, 94, 80, 85, 99 ……
分数 0~59(A) 60~69(B) 70~79(C) 80~89(D) 90~100(E)
所占比例(权值) 5% 15% 40% 30% 10%
我们对成绩进行分类
第一种:构成逻辑树:
对应代码:
 
对于小学生成绩一般大致分布在中等、良好和优秀,以此为基础理论我们可以对上面的树进行优化分类:
第二种:
对应代码:
第一种分类运行效率:0.0022571秒
第二种分类运行效率:0.0005124秒
 
运用赫夫曼树进行分析:根据数组比例我们排序得到A5、B15、C40、D30、E10
依次根据权值进行排列得到最优树:
对应代码:
分类运行效率:0.0023347秒
最优树因为需要进行2次判断(item>=70&&item<80)所以性能还不如以上2种
 
 请多多指教!
posted @ 2016-07-12 14:20  技术大兵  阅读(226)  评论(0编辑  收藏  举报