哈 夫 曼 编 /译 器 一 、 需 求 分 析 1、 本 演 示 程 序 实 现 Haffman编 /译 码 器 的 作 用 , 目 的 是 为 信 息 收 发 站 提 供 一 个 编 /译 系 统 ,从 而 使 信 息 收 发 站 利 用 Haffman 编 码 进 行 通 讯 , 力 求 达 到 提 高 信 道 利 用 率 , 缩 短 时 间 ,降 低 成 本 等 目 标
系 统 要 实 现 的 两 个 基 本 功 能 就 是 : ① 对 需 要 传 送 的 数 据 预 先 编 码 ;② 对 从 接 收 端 接 收 的 数 据 进 行 译 码 ; 2、 本 演 示 程 序 需 要 在 终 端 上 读 入 n 个 字 符 ( 字 符 型 ) 及 其 权 值 ( 整 形 ), 用 于 建 立 Huffman树 ,存 储 在 文 件 hfmanTree
txt 中 ; 如 果 用 户 觉 得 不 够 清 晰 还 可 以 打 印 以 凹 入 表 形 式 显示 的 Huffman 树 ; 3、 本 演 示 程 序 根 据 建 好 的 Huffman 树 , 对 文 件 的 文 本 进 行 编 码 , 结 果 存 入 文 件 CodeFile中 ; 然 后 利 用 建 好 的Huffman 树 将 文 件CodeFile 中 的 代 码 进 行 译 码 , 结 果 存 入 文 件TextFile 中 ; 最后 在 屏幕上 显 示 代 码 ( 每行 50 个 ), 同时 显 示 对 CodeFile 中 代 码 翻译后 的 结 果 ; 4、 本 演 示 程 序 将 综合使 用 C++和C 语言; 5、 测试数 据 : (1)教材例6-2 中 数 据 : 8 个 字 符 , 概率 分别是 0