java编码工作原理(给我手写一个哈夫曼编码)
java编码工作原理(给我手写一个哈夫曼编码)
2024-11-22 02:24:51  作者:敗鎵尐爺  网址:https://m.xinb2b.cn/know/irq308430.html

哈弗曼树往往都会根据哈夫曼编码结合着来说,因此这篇文章,主要结合着面试问题来说明。

一、基本概念

哈夫曼树的目的是找出存放一串字符所需的最少的二进制编码, 原理是通过统计出每种字符出现的频率!不断地对其合并。

举个例子:有一串字符,现在把这些字符进行统计,频率表 A:60, B:45, C:13 D:69 E:14 F:5 G:3。现在要对这些字符进行编码,但是前提是使用最少的二进制编码。这时候怎么办呢?这就用到了我们的哈弗曼树。

我们需要构造一个哈弗曼树,构造赫夫曼树的算法是一个贪心算法,贪心的地方在于:总是选取当前频率(权值)最低的两个结点来进行合并,构造新结点。

现在我们就来构造一颗哈弗曼树。

二、构造哈弗曼树

刚刚我们已经说了,构造哈夫曼树是每次选取当前频率最低的两个节点来进行合并就好了。

1、原始序列


2、选取最小的F和G节点合并


3、选取目前最小的C节点与8合并


4、继续重复以上步骤进行合并


到此为止,我们的哈弗曼树就已经构造出来了。接下来我们添加01规则,进行哈夫曼编码。

三、哈夫曼编码

哈夫曼编码的规则是,左边添加0,右边添加1。看下图就明白了。


OK,也就是在每一条边上添加了01。此时我们来看每一个字符的编码。

A:10 B:01 C:0011 D:11 E:000 F:00101 G:00100

四、java实现哈夫曼编码

我们直接给出一个整体的哈夫曼编码的java实现。

第一步:定义一个节点


第二步:实现哈夫曼编码



  • 前后两帧关键帧左右晃动教学(关键帧入门第7集)
  • 2024-11-22关键帧入门第7集(具体操作请看2022年2月25号发的视频)这个视频是关键帧,作用于画中画,在结合旋转、复制等功能制作出来的下面上详细教程,喜欢小花视频的话就长按点赞两秒钟,送小花一个强烈推荐呗点击我们心爱的剪映,再。
  • 不粘锅涂层烧黑怎么办(不粘锅涂层烧黑的清洁方法)
  • 2024-11-22不粘锅涂层烧黑的清洁方法用塑料铲子轻轻铲去不粘锅内烧糊的食物,不能用钢铁制品,容易破坏涂层往锅内倒入适量洗涤剂,用塑料刷子在没有清除干净的位置处再来回摩擦几次清除锅内所有异物后,用平时刷碗的抹布再次抹干净锅体内部最后用清水冲。
  • 他对我很好可我心里对他厌恶至极(我觉得他就是玩玩你而已)
  • 2024-11-22我觉得他就是玩玩你而已第117章中秋节的小礼物夏小洛虽然不懂鉴赏什么古玩字画之类的,但是听到‘古董’两个字,脑子里立马联想到的就是价值连城“老公,就算把我卖了,也赔不起!”夏小洛耷拉着脑袋,等待着凌天翊的最终判决凌天翊倒是。
  • 社保卡退保能退多少钱(社保卡能退保吗)
  • 2024-11-22社保卡能退保吗社保一般是不能退的,有的情况下也可以退,具体情况如下:(1)外地农村户口:可以在离职后申请退还个人缴费部分,但单位交的部分不能退(2)城镇户口不能中途退保,只有死亡、出国定居或者到法定退休年龄交费不满。
  • 沈曼yy频道多少
  • 2024-11-22沈曼yy频道多少  沈曼,女孩,1992年出生,四川成都人,2013年之前是一位护士,后来成为YY娱乐当红网络女主播,迄今已吸引逾4亿名用户在这个半虚拟的平台上,得意者可能一夜暴富,并成为星光熠熠的焦点YY频道是23。
  • 孙悟空取经前的三件大事(孙悟空原本是玉帝身边的人)
  • 2024-11-22孙悟空原本是玉帝身边的人为什么弼马温这个职位是空着的呢?玉帝让孙悟空做弼马温的用意是什么?弼马温官职大吗?位置重要吗?孙悟空的下属藏着什么样的心思?孙悟空的离开谁是最大受益者?弼马温这个职位空的很巧妙继续我们的脑洞西游第十五。
  • 缅甸人都用什么聊天软件(缅甸人常用聊天软件)
  • 2024-11-22缅甸人常用聊天软件缅甸以前最流行的是Google公司开发的gtalk即时通讯软件,现在则是用韩国NHN日本子公司开发的line和中国腾讯公司开发的微信最多毕竟现在微信针对缅甸也做出了适当的调整好能适应缅甸当地人的软件使。
  • 瑞风s4车身稳定(凭这套智能的车机系统)
  • 2024-11-22凭这套智能的车机系统随着近几年智能化技术的快速发展,车载系统基本是新车上的一个标配但是大家的普遍感受是,显示屏越来越大,但人性化和本地化功能却是欠缺得越来越多,让车载系统没有与装配大屏相匹配,因此也鲜有消费者愿意为它单独。
  • 民间故事七兄弟娶七姐妹(民间故事秀才连克六妻)
  • 2024-11-22民间故事秀才连克六妻清朝时期,凤翔有个名叫罗程的秀才,出身自经商世家,家财万贯,其人相貌英俊,满腹才华,镇上爱慕他的姑娘,能从村东排到村西,罗程面对众多的提亲者,提出了征婚条件,就是姑娘必须心善姑娘中有个叫白蜻蜓的少女,。
  • 如懿因为什么对皇帝失望(皇上在城楼上还哭得像个孩子)
  • 2024-11-22皇上在城楼上还哭得像个孩子如懿离世,追看《如懿传》大结局的VIP们有没有被虐到,虽然剧情很平缓,就像是爱情文艺片,但是小编却被虐到,不管是如懿去世的场景,还是海兰灵堂上哀莫大于心死的表情,以及皇上对如懿的每一个愧疚回忆的镜头,。
  • 会计学硕考研全面复习攻略(会计专硕考研参考书目大盘点)
  • 2024-11-22会计专硕考研参考书目大盘点各位研友们,今天过得好吗?会计硕士专业学位又称专业会计硕士(简称MPAcc)是经教育部、国务院学位办批准设立的一种专业学位,专业代码为125300会计硕士专业学位的目标是培养具有良好职业道德,系统掌握。