- 1
- 0
- 约4.66千字
- 约 26页
- 2017-11-28 发布于贵州
- 举报
【精选】2009-数据结构课程实习
数据结构课程实习 实习班级:111081-4班 指导教师:张剑波 方芳 内容提要 实习时间安排 考核标准 需要提交的文档 实习题目及讲解 一、实习时间安排 实习时间(2周,3学分,48学时) 1月12号到1月20号,9天时间 下午2:00-6:00, 5学时 实习地点:信息楼202 课程实习中随时可以检查完成情况! 二、考核标准 上机考勤: 10% 课程设计报告:30% 软件设计作品:60% 注意:本次实习布置3道题可供选择,实习成绩与完成的题数和质量相关 1、优秀:完成3题,且代码质量高; 2、良好:完成2题,且代码质量高; 3、中等:完成2题,且代码质量一般; 4、及格:完成1题; 5、不及格:完成小于1题 三、需要提交的文档 课程设计报告:严格按照格式要求撰写,并使用A4纸打印 (课程设计报告不需要打印所有源代码) 源程序汇总:各班学习委员将所有同学的源代码以及设计报告汇总,按班级-学号-姓名的形式分目录存储,刻成光盘 上交时间:下学期开学第一周的周一 上交地点:信工楼213软件工程系 四、实习题目 实习一:软件压缩/解压缩软件 Szip(Huffman算法及应用) 要求:首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解码,也就是解压,复原原有文件。 例如:控制台程序命令为: 压缩命令 :SZip A 1.doc Test.Haf 解压缩命令:SZip X Test.Haf 2.doc 或 SZip X Test.Haf 实习一 基本要求: 压缩准备:读取指定被压缩文件,对文件进行分析,建立哈夫曼树。 压缩:利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数据一起写入文件中,形成压缩文件(*.Haf)。 解压:打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其中的数据,进行译码后,写入文件,完成解压缩。 实习一(续1) 提高要求: 基于Windows对话框界面,可选择输入/输出文件名,有压缩进度条显示。 解压不必指定文件后缀,自动生成原始文件。 同类型的文件测试不同的数据集,比较其压缩比,采用最有效的压缩方式。 支持多种类型文件的压缩。 试构建程序框架,使其能添加新的压缩/解压缩算法(例如书上LZW压缩算法) 实习一(续2) 测试数据: 约40000字符左右。 示例数据.txt, 80K,采用WinRar压缩后为43K;本算法压缩后约为61K; 示例数据.doc,144K,采用WinRar压缩后为52K。 实习一提示 针对ASCII字符集[0,255]的频率统计 数据类型采用BYTE或unsigned char 文件一般读取两次:统计与编码 分块读取文件,建议为1K的整数倍 为了获得较好的压缩效率,频率的确定要以大量的统计数字为依据,或者压缩时再动态地统计各字符出现的频率 静态Huffman压缩 动态Huffman压缩 实习一提示(续1) 压缩存储的实现 从字符序列中逐个取出字符,转换为Huffman编码,以位为单位依次存储。 例如:a:0, b:10, c:110; d:1110; e:1111 abaacaadaaaeaab 0100011000111000011110010 需要四个字节的空间, 使用unsigned short存储: 0xFFFF,16位 使用unsigned int存储: 0xFFFFFFFF,32位 使用位操作、移位操作 位操作示例 Int Insertbit (int bit) { hufcoded=1; if (bit) hufcoded |=1; if (++bitcounter==8) { bitcounter=0; fputc(hufcoded, file); } } 实习一提示(续2) Huffman树的保存: 顺序存储方法,511个结点足够 由于Huffman树是完全二叉树,每个非叶结点都有两个孩子,没有左孩子的结点一定是叶结点。所以,我们实际上只需要rlink字段就能描述我们的Huffman树 可以使用带右链的先根次序储Huffman树: 每个结点需要三个字段 Info是结点的数据,rlink是指右子树的指针,tag标记该结点是否有左子女 当rlink =512时表示它是指向右子树的指针,否则表示一个代码为rlink-512的字符的叶结点。这样,约需要511×2≈1KB的附加空间用于存储Huffman树。 实习一提示(续3) 解压过程: 把数据从Huffman编码还原到原来的字符编码,也要以位为单位,一位一位地进行。最先从根开始,根据面临的数据位是0还是1决定走左子树或右
您可能关注的文档
- 【精选】2008年数学三.pdf
- 【精选】2008年普通高等学校招生全国统一考试宁夏海南理科数学试题及答案.doc
- 【精选】2008年普通高等学校招生全国统一考试(海南卷).doc
- 【精选】2008年普通高等学校招生全国统一考试数学(海南宁夏卷·理科)(附答案,完全word版).doc
- 【精选】2008年普通高等学校招生全国统一考试文综试题及答案-四川卷.pdf
- 【精选】2008年普通高等学校招生全国统一考试数学卷(海南宁夏.文)含详解.doc
- 【精选】2008年普通高等学校招生全国统一考试海南宁夏数学理科试卷含答案1.doc
- 【精选】2008年普通高等学校统一考试数学(理科)(海南、宁夏卷).doc
- 【精选】2008年服务语言规范.doc
- 【精选】2008年河北省初中毕业生升学文化课考试数学试题(有答案)word版.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 作文稿纸A4打印模板.docx VIP
- 《城市轨道交通客运服务》教案 项目二 城市轨道交通客运服务标志.pdf VIP
- 弱电系统维保方案(三篇).pdf VIP
- 2026建筑施工企业复工复产开工第一课.pptx
- 肠内营养(江苏)PPT课件.pptx VIP
- 基于51单片机智能晾衣架的设计.doc VIP
- 第一单元 第1课《童年艺趣》(课件)人教版三年级美术上册.ppt
- 交互设计2 交互系统与设计目标.ppt VIP
- 2024-2025学年广东深圳龙华区高一(上)期末数学试卷【答案版】.pdf VIP
- 工程伦理 课件全套 李正风 第1--9章 工程与伦理、 如何理解伦理--- 全球化视野下的工程伦理(414页).pptx VIP
原创力文档

文档评论(0)