您的当前位置:首页正文

数学基础题

来源:华拓网

欧拉函数

Φ(x) = x * (1-1/p1) * (1-1/p2)...
其中p1,p2...为x的所有质因数。
如56=2*2*2*3,则Φ(56) = 56 * (1-1/2)*(1-1/7) =

哈夫曼树

以数据集{3,6,9,5,11,8}为权值构造一棵赫夫曼树,其带权路径长度为

哈夫曼树构建方法:
先排序{3, 5, 6, 8, 9, 11},取出最小的3和5构建子树,产生新节点8*

  8*
3   5

排序{6, 8, 8*, 9, 11},取出最小的6和8构建子树,产生新节点14*,排序

  14*
6     8

{8*, 9, 11, 14*},取出最小的8*和9构建子树,产生新节点17*,排序

      17*
  8*       9
3   5

{11, 14*, 17*},取出最小的11和14*构建子树,产生新节点25*,排序

    25*
11       14*
       6    8

{17*, 25*},取出最小的17*和25*构建子树,产生新节点42*此时全部构建完毕,整棵树如图

               42*                                 0
      17*              25*                         1
  8*       9       11        14*                   2
3   5                       6   8                  3

右侧为该层深度,带权路径为所有的叶节点*深度的累加和
带权路径 = 0 * 0 + 1 * 0 + 2 * (9 + 11) + 3 * (3 + 5 + 6 + 8)= 106