1、任务简介
本节任务的目的是编写一个Java程序,用于求取文本文档中某一指定汉字的信息熵,该任务可以基于《Java文本处理3-统计文本行数、字符数、汉字、数字、字母数等》及《Java文本处理4-查询文本中汉字或字符串的出现次数》来进行。
2、信息熵的计算
关于信息熵的概念我们在《信息论》这门课程中已经学习过了,信息熵具有确定性、非负性、对称性、连续性等许多重要性质,所以我们在计算它的时候要保证计算结果为正值,其基本公式为:
H ( X ) = ∑ i = 1 n p i ∗ I i = − ∑ i = 1 n p i ∗ log 2 ( p i ) H(X)=\sum_{i=1}^{n}{p_i*I_i}=-\sum_{i=1}^{n}{p_i*\log_2(p_i)} H(X)=i=1∑npi∗Ii