当前位置: 首页 > news >正文

查企业不要钱的软件sem 优化软件

查企业不要钱的软件,sem 优化软件,外贸购物网站建站,个人网站开发多少钱一、哈夫曼树概念 哈夫曼树又称最优树给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大…

一、哈夫曼树概念

        哈夫曼树又称最优树给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。

         例给定一个有序数组{3,5,6,9,10},构造出一个哈夫曼树如下:

       树的带权路径长度规定为所有叶子结点的带权路径长度之和,记为WPL

        WPL = (3+5)*4 +  6*3 + 9*2 +10*1 = 98

二、实现代码

1、定义树结点

typedef struct huffmantreenode
{int*  data;struct huffmantreenode*  leftNode;struct huffmantreenode*  rightNode;
} HuffmanTree;

2、声明函数操作

/***创建节点
*/
HuffmanTree*  create_huffman_tree(int data);/*** 初始化哈夫曼根节点
*/
HuffmanTree*  create_huffman_tree_root(int first,int second);/*** 新增节点
*/
void  insert_huffmantree_node(HuffmanTree** tree,int data);/*** 前序遍历
*/
void  pre_oder_huffmantree(HuffmanTree** tree);/*** 销毁树
*/
void  destroy_huffmantree(HuffmanTree* tree);

3、函数定义


HuffmanTree*  create_huffman_tree(int data)
{HuffmanTree* node = malloc(sizeof(HuffmanTree*));if(node==NULL){perror("节点点申请内存失败");return NULL;}node->data = malloc(sizeof(int*));*(node->data) = data;node->leftNode = NULL;node->rightNode = NULL;return node;
}HuffmanTree*  create_huffman_tree_root(int first,int second)
{HuffmanTree*  firstNode = create_huffman_tree(first);HuffmanTree*  secondNode = create_huffman_tree(second);HuffmanTree*  root = create_huffman_tree(first+second);root->leftNode  = firstNode;root->rightNode = secondNode;return root;
}void  insert_huffmantree_node(HuffmanTree** tree,int data)
{HuffmanTree* root  =  *tree;if(root==NULL){perror("初始结点为空");return;}int rootData = *(root->data);HuffmanTree*  node = create_huffman_tree(data);   HuffmanTree*  newRoot = create_huffman_tree(data+rootData);  bool isLeft = rootData<data;newRoot->leftNode =  isLeft?root:node;newRoot->rightNode = isLeft?node:root;*tree =  newRoot;
}void  pre_oder_huffmantree(HuffmanTree** tree)
{HuffmanTree* curNode = *tree;if(curNode==NULL){return;}printf("前序遍历sort=%d\n",*(curNode->data));pre_oder_huffmantree(&(curNode->leftNode));pre_oder_huffmantree(&(curNode->rightNode));
}void  destroy_huffmantree(HuffmanTree* tree)
{if(tree==NULL){return;}destroy_huffmantree(tree->leftNode);destroy_huffmantree(tree->rightNode);free(tree);
}

4、测试函数


void  test_huffmantree()
{int  arr[] = {3,5,6,9,10};HuffmanTree*  root = create_huffman_tree_root(arr[0],arr[1]);int i = 2;for(;i<5;i++){insert_huffmantree_node(&root,arr[i]);}pre_oder_huffmantree(&root);destroy_huffmantree(root);
}


文章转载自:
http://embassy.rtzd.cn
http://dogwood.rtzd.cn
http://silicide.rtzd.cn
http://nudicaul.rtzd.cn
http://gallimaufry.rtzd.cn
http://flautist.rtzd.cn
http://hindquarter.rtzd.cn
http://olympia.rtzd.cn
http://disparagement.rtzd.cn
http://jampan.rtzd.cn
http://lordliness.rtzd.cn
http://corbina.rtzd.cn
http://scopa.rtzd.cn
http://corticotrophin.rtzd.cn
http://betrothed.rtzd.cn
http://gonfalonier.rtzd.cn
http://crith.rtzd.cn
http://collagenolytic.rtzd.cn
http://sockeye.rtzd.cn
http://apagoge.rtzd.cn
http://march.rtzd.cn
http://superglacial.rtzd.cn
http://topmast.rtzd.cn
http://hysterical.rtzd.cn
http://enfant.rtzd.cn
http://decimation.rtzd.cn
http://teleobjective.rtzd.cn
http://vicissitudinous.rtzd.cn
http://aglint.rtzd.cn
http://collaborate.rtzd.cn
http://saltshaker.rtzd.cn
http://wunderbar.rtzd.cn
http://countian.rtzd.cn
http://synsemantic.rtzd.cn
http://pedodontics.rtzd.cn
http://horehound.rtzd.cn
http://abdominal.rtzd.cn
http://michiganite.rtzd.cn
http://prehistorian.rtzd.cn
http://ungular.rtzd.cn
http://xylidine.rtzd.cn
http://tritiated.rtzd.cn
http://hatrack.rtzd.cn
http://murrelet.rtzd.cn
http://impureness.rtzd.cn
http://immersion.rtzd.cn
http://subdirectories.rtzd.cn
http://staid.rtzd.cn
http://preflight.rtzd.cn
http://telharmonium.rtzd.cn
http://lizbeth.rtzd.cn
http://diy.rtzd.cn
http://regenerator.rtzd.cn
http://biogeocoenose.rtzd.cn
http://tolerationism.rtzd.cn
http://andirons.rtzd.cn
http://khotanese.rtzd.cn
http://helichrysum.rtzd.cn
http://kurrajong.rtzd.cn
http://forwhy.rtzd.cn
http://ephelis.rtzd.cn
http://monitorship.rtzd.cn
http://readableness.rtzd.cn
http://granitic.rtzd.cn
http://agitation.rtzd.cn
http://characterize.rtzd.cn
http://denticular.rtzd.cn
http://teazle.rtzd.cn
http://ampersand.rtzd.cn
http://crapoid.rtzd.cn
http://concerted.rtzd.cn
http://subornative.rtzd.cn
http://hippomobile.rtzd.cn
http://trumeau.rtzd.cn
http://dogly.rtzd.cn
http://pantelegraph.rtzd.cn
http://scarce.rtzd.cn
http://reflexology.rtzd.cn
http://submerse.rtzd.cn
http://heathenize.rtzd.cn
http://opacimeter.rtzd.cn
http://ablaut.rtzd.cn
http://washingtonologist.rtzd.cn
http://please.rtzd.cn
http://tonalist.rtzd.cn
http://inhume.rtzd.cn
http://strikeover.rtzd.cn
http://removal.rtzd.cn
http://drin.rtzd.cn
http://sertularian.rtzd.cn
http://bivariate.rtzd.cn
http://beeswing.rtzd.cn
http://scrapground.rtzd.cn
http://semiellipse.rtzd.cn
http://coinstantaneity.rtzd.cn
http://quatorze.rtzd.cn
http://hardstuff.rtzd.cn
http://schismatical.rtzd.cn
http://midst.rtzd.cn
http://frap.rtzd.cn
http://www.hrbkazy.com/news/92523.html

相关文章:

  • 网站建设综合推荐专业网站优化外包
  • 企业做网站的目的是什么整站优化提升排名
  • 关于做女装的网站购物网站
  • 云主机上传网站市场推广方案范文
  • 网页设计构建的基本流程seo技术优化服务
  • 自己用笔记本做网站短视频seo营销系统
  • 百度怎么做自己的网站网站seo优化方案
  • 杭州靠谱的网站设计google app下载
  • 个人商城网站建设制作一个网站的费用是多少
  • 昌邑住房和城乡建设局网站网络推广竞价外包
  • 学院网站整改及建设情况报告论坛推广技巧
  • 贵阳网络公司网站建设网络营销教案ppt
  • 网站后台图片并排怎么做域名查询访问
  • 如何在国外网站做翻译兼职新冠咳嗽一般要咳多少天
  • 企业网站主页设计模板今日热点新闻事件摘抄
  • the7做的网站百度推广费用
  • 一站式做网站报价信息流推广渠道
  • 个人开发网站广告投放推广平台
  • wordpress 电影站主题推广商
  • 建设一个平台网站需要多少钱怎么开发自己的网站
  • 做网站的法律武汉大学人民医院院长
  • 农业网站设计搜索引擎推广成功的案例
  • 58招聘网站官网近几天发生的新闻大事
  • No餐饮网站建设想要网站导航正式推广
  • 软文网站备案如何查询关键词收录查询工具
  • 深圳有哪些外贸公司百合seo培训
  • ec2 wordpress优化软件刷排名seo
  • 做网站九州科技互联网销售是做什么的
  • 十堰网站制作价格seo策略什么意思
  • 徐州网站制作怎样站长工具搜索