创建霍夫曼树时增加权重时哪个节点向左或向右

2024-03-03

我正在尝试创建一棵霍夫曼树,但阅读互联网上的几个链接时我有点困惑。有些在左侧添加较大(就权重而言)的子节点,有些在右侧添加。

所以我的问题是:

(1)在哪里添加节点(左边还是右边)真的有问题吗?

(2) 我可以在右侧添加权重较大的节点还是在左侧添加权重较小的节点?

谢谢您的帮助。


这没有什么区别,也不必保持一致。目前接受的答案是错误的。

原因是:

  • 树中每个编码字符的深度不受此决定的影响;
  • 霍夫曼解码算法,得到树,所以“左”或“右”没有意义......此时它只是关于独特的符号字符串,由符号0或1组成,它们被实现为位,唯一地定义一个字符。零或一没有特殊含义:唯一重要的是它们是不同的,并且系列定义的字符没有歧义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

创建霍夫曼树时增加权重时哪个节点向左或向右 的相关文章

  • 从 SQL 数据库获取日期时间

    我的数据库表中有一个 DateTime 记录 我编写一个查询从数据库中获取它 string command2 select Last Modified from Company Data where Company Name Descrip
  • 如何调试参数化 SQL 查询

    我使用 C 连接到数据库 然后使用 Ad hoc SQL 来获取数据 这个简单的 SQL 查询非常方便调试 因为我可以记录 SQL 查询字符串 如果我使用参数化 SQL 查询命令 有没有办法记录 sql 查询字符串以进行调试 我想就是这样的
  • LINQ to XML - 如何正确使用 XDocument

    现在我首先要说的是 这确实是一项任务 然而 在我遇到 Linq to XML 语法之前 我几乎已经完成了它 我有 2 个课程 曲目和 CD 现在作为作业的一部分 我创建了一张 CD 然后向其中添加了一些曲目 在搜索了大量完美解释了如何从 x
  • 将 2D 数组映射到 1D 数组

    我想用一维数组来表示一个二维数组 函数将传递两个索引 x y 和要存储的值 这两个索引代表一维数组的单个元素 并相应地设置它 我知道一维数组需要具有 arrayWidth arrayHeight 的大小 但我不知道如何设置每个元素 例如 如
  • 如何在 C# 事件中区分更改是由代码还是由用户进行?

    我有一个简单的TextBox一开始是空的 我有一个简单的事件 TextChanged 可以知道用户何时更改了其中的任何内容TextBox 但是 如果我自己在代码中对其执行任何操作 该事件就会触发 喜欢设置textbox Text Test
  • 有没有比这更快的方法来查找目录和所有子目录中的所有文件?

    我正在编写一个程序 需要在目录及其所有子目录中搜索具有特定扩展名的文件 这将在本地驱动器和网络驱动器上使用 因此性能是一个问题 这是我现在使用的递归方法 private void GetFileList string fileSearchP
  • __FUNCTION__ 宏的 C# 版本

    有人对 C FUNCTION 宏的 C 版本有好的解决方案吗 编译器似乎不喜欢它 尝试使用这个代替 System Reflection MethodBase GetCurrentMethod Name C 没有 LINE or FUNCTI
  • 使用 VSTO 更改 Outlook 设置

    我刚刚花了大约 4 个小时试图弄清楚如何以编程方式检索 设置 Microsoft Outlook 2010 的 Outlook 设置 我所说的 设置 是指文件 选项 邮件下的设置 我想做的是检索用户设置的设置列表 自动化我们每天需要在某些消
  • C++ 在 Vector 中使用不可分配的对象

    我想将对象列表存储在std vector 但对象包含引用且无法分配给 但是 我可以复制构造该对象 我能想到的唯一选择是使用指针来包装对象并在需要分配指针时重新设置指针 但这样做的语法会显着降低可读性 特别是在使用迭代器时 我更喜欢另一种选择
  • 根据拦截和返回值自动重试客户端WCF调用

    是否可以拦截 WCF 调用的结果并重试该操作 例如 操作的返回值可能包含状态代码 指示我传递到原始调用的会话令牌已过期 在这种情况下 我可以检索新的会话令牌并使用新的会话令牌重试调用 是否可以通过使用 WCF 拦截返回值 检查它 然后以对操
  • 优化两个三位数乘积的最大回文数?

    我正在研究一个面试问题 我被问到这个问题 我应该编写一个程序 从两个三位数的乘积中找到最大的回文数 这里是question https projecteuler net problem 4 我想出了这种从底部开始的蛮力方法 public c
  • 捕获当前正在播放的声音

    是否可以捕获计算机上当前播放的声音 如果能够将其保存为 mp3 就好了 但我认为这样做会存在一些法律问题 所以 wav 也可以 我环顾四周 有人建议使用虚拟音频线之类的东西 在 C 中捕获声音输出 https stackoverflow c
  • C#:使用 System.Text 和 System.Text.RegularExpressions 之间的区别

    在 ASP NET C 应用程序中 我注意到为了使用 Regex 和 StringBuilder 我必须将两者都放在 using System Text using System Text RegularExpressions 从简单的角度
  • 布隆过滤器的使用

    我正在努力理解布隆过滤器的用处 我了解了它的底层逻辑 空间压缩 快速查找 误报等 我只是不能将这个概念应用到现实生活中 因为它是有益的 一种常见的应用是在 Web 缓存中使用布隆过滤器 我们使用布隆过滤器来确定给定的 URL 是否在缓存中
  • 使用 Linq 进行异步Where过滤

    我有一个List通过填充的元素async调用 WebService 没问题 我需要过滤该列表以便在应用程序视图上显示某些内容 我试过这个 List
  • 通过排列四个给定数字找到最大可能时间 HH:MM

    我最近为了工作晋升而参加了编码测试 这是我真正遇到的任务之一 我想知道什么是最好的方法来做到这一点 我使用了大量的 if 和 if else 这不是最干净的解决方案 但完成了工作 我被问到的问题是 将 4 个数字格式化为 24 小时时间 0
  • 用 C# 编写的带有点击移动的 WPF 游戏

    我试图将标签网格移动到鼠标的位置 就像冒险游戏中的移动一样 理想情况下 我会在途中删除并重新绘制它们 但是 现在我只想弄清楚如何将 int 转换为厚度或 pointtoscreen 到目前为止我有 player XMove int Mous
  • C# ToString("MM/dd/yy") 删除前导 0 [重复]

    这个问题在这里已经有答案了 可能的重复 格式化 NET DateTime Day 不带前导零 https stackoverflow com questions 988353 format net datetime day with no
  • 有没有办法让 VS2010 在我的方法中扩展或收缩 try 块?

    我的代码有很多 try catch finally 块 与我在 VS2010 中的方法不同 除了添加区域之外 我无法在开发时扩展或收缩这些区域来隐藏内容 try vm R vm Qu vm T vm D vm Fil vm Type vm
  • C++0x 中的新 unicode 字符

    我正在构建一个 API 它允许我获取各种编码的字符串 包括 utf8 utf16 utf32 和 wchar t 根据操作系统 可能是 utf32 或 utf16 新的 C 标准引入了新类型char16 t and char32 t没有这么

随机推荐

  • 如何使用 Flask 获取页面访问者的 Windows 用户名?

    我到处搜索过 但没有找到任何结果 所以很抱歉 如果这篇文章是骗人的 我找不到任何东西 我为我的公司编写了这个相当广泛的网络应用程序 唯一剩下的就是添加某种审核 我不知道如何捕获当前访问我的页面的人的用户名 由于托管的盒子是以管理员身份登录的
  • 使用 PDFMake 嵌套/子表

    如何在 PDFmake 中使用嵌套 子表 我尝试过简单地放入多个表格 但这不会自动重复顶级表格的标题以进行分页符 此代码是使用子表的简化示例 它改编自 pdfmake Playground 的表格部分 通过 Google 搜索不容易找到 将
  • Djangocms 中的自定义视图?

    我还没有找到令人满意的方法 我有一个运行良好的 djangocms 设置 但我需要将 CMS 外部表格中的内容添加到我的主页 并在模板上呈现该内容 我可以做到这一点 但在 CMS 中编辑 urls py 以使用我的视图 如下所示 url r
  • 我可以使用 conda 安装 Python 的 alpha 或 beta 版本吗?

    在撰写本文时 alpha 版本3 8 0a4python 可用 我想在正式发布之前在 conda 环境中进行一些测试 出于教育目的并满足一些好奇心 当尝试 conda install 3 8 时 我得到了PackagesNotFoundEr
  • 为什么 stylelint vscode 扩展在我的计算机上不起作用?

    我遵循guide https marketplace visualstudio com items itemName stylelint vscode stylelint安装stylelintvscode 扩展 但它在我的电脑上不起作用 我
  • 在R中查找另一个字符串中的一个字符串

    我想在R中的另一个字符串中查找一个字符串 字符串如下 我希望能够将字符串 a 与字符串 b 匹配 输出应该是a b返回 TRUE a lt 6250 7250 6251 b lt 7250 a b FALSE 您可以使用regmatches
  • D3:在多条线的折线图中跳过空值

    我有一个动态数组来显示包含多条线的折线图 例子 var data x 2005 y 100 x 2007 y 96 5 x 2009 y 100 3 x 2011 y 102 3 x 2005 y 100 x 2007 y 105 x 20
  • 通过 PHP 从目录中的文件生成 XML

    我有两个文件夹图像和带照片的大图像 我想生成一个具有两个属性的 XML 文件 如下所示
  • MYSQL 中的字符串连接

    我怎样才能在mysql中连接这个字符串 desc desc desct 我想要的是每次我从 PHP 插入一个变量时 该字符串都会添加到已经在 db 中并用分隔符分隔的字符串中 字段描述应该是这样的 desc 10 30 90 710 假设我
  • 是否会使应用程序不可见?

    我使用了隐式意图 以便在有人单击其他应用程序中的 URL 时打开我的应用程序 我无法看到已部署的应用程序的图标 部署我的应用程序后 如果我返回并尝试找到我的应用程序 我将无法找到它 但它在最近的应用程序中 这是android清单中的代码
  • 为 php 5.6 添加 mongodb 扩展(XAMPP)

    我在这里读过一些关于解决我的问题的帖子 但都不适用于 php 5 6 我下载了php mongo 1 6 8 zip and php mongo 1 6 7 zip并尝试了所有 dll 扩展名 所有扩展名都给出了一个或另一个错误 错误信息
  • 如何为 LLVM IR 生成元数据?

    我正在尝试为我生成的 LLVM IR 生成元数据 我想生成以下形式的元数据 nvvm annotations 0 0 metadata void foo metadata kernel i32 1 其中 foo 是我的 LLVM IR 中的
  • orchard cms:如何将媒体选择器字段添加到自定义部分

    我的问题类似于questions 10369967 orchard cms 如何将媒体选择器字段添加到新模块 https stackoverflow com questions 10369967 orchard cms how to add
  • 我应该在 SharpZipLib 中选择哪种压缩类型?

    我有一个发送文件和文件夹的文件传输应用程序 服务器 客户端 我正在尝试通过 TCP 套接字 发送数据 我已经为传输数据的方式制定了一些规则 因此 如果它发送包含许多文件的大文件夹 则应首先将它们压缩为单个 zip 文件 然后再发送发送的 z
  • 领域模型模式示例

    我只是想找一些 Martin Fowler 的例子领域模型 http martinfowler com eaaCatalog domainModel html模式 而我不能 根据我在互联网领域模型上发现的内容 只是向类添加一些 逻辑 方法
  • 如何防止 PyCharm 覆盖 matplotlib 中设置的默认后端?

    我已将默认后端设置为Qt5Agg in config matplotlib matplotlibrc 如果我使用常规 ssh 提示符并打开 这会起作用ipython并运行import matplotlib as mpl 我正确地得到 mpl
  • 带时间戳零的 PHP 日期返回 1 小时

    如果我执行以下操作 date H i s 0 它返回01 00 00 同时它should give 00 00 00 它可能与我的本地主机的时区有关吗 世界标准时间 1 如果是这样 我该如何解决这个问题 致电前设置时区date 你将使用da
  • 为什么在SciPy中使用integrate.odeint时不调用Dfun(gradient)?

    任何人都可以提供一个向 a 提供雅可比行列式的示例吗 integrate odeintSciPy 中的函数 我尝试从 SciPy 教程运行此代码代码示例 http docs scipy org doc scipy dev reference
  • gwt 中的会话管理

    我正在开发 GWT ext 应用程序 在此应用程序中 我管理客户端会话 为此我写了下面的代码 管理会话 导入 com google gwt user client Timer public class ClientTimers privat
  • 创建霍夫曼树时增加权重时哪个节点向左或向右

    我正在尝试创建一棵霍夫曼树 但阅读互联网上的几个链接时我有点困惑 有些在左侧添加较大 就权重而言 的子节点 有些在右侧添加 所以我的问题是 1 在哪里添加节点 左边还是右边 真的有问题吗 2 我可以在右侧添加权重较大的节点还是在左侧添加权重