数据结构课程设计——客运订票系统
2021-12-21 11:04:14 7KB C 数据结构
1
算 法 与 数 据 结 构 课 程 设 计 报 告 B-Trees 的实现及分析 ① 实现在B-树上的查找,并分析其时间复杂性。 ② 实现B-树的ADT,包括其上的基本操作:结点的加入和删除。 ③ 要求B-树结构中的M=3 或5,实现其中的一种即可。 ④ 实现基本操作的演示。 (4) 实现提示
1
1.纸牌游戏 任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向上的牌有哪些? 题目比较简单。但用了MFC的一些知识,实现了图形化,比较形象。 2.哈弗曼压缩 实现哈弗曼压缩及解压缩功能,并计算压缩前后文件占用空间比 模型建立与题目分析 压缩: 以二机制可读形式打开源文件,以二进制可写形式打开压缩目标文件。每次从源文件读取八个比特(一字节),作为一个ASCII码,并统计所有出现的字节的频率,将字节作为哈夫曼数的叶子结点插入到一个链表中。然后根据链表建立哈夫曼树,按照哈夫曼算法对所有出现的字节编码。然后重新从头开始读源文件,每次读入一字节,从哈夫曼树相应叶子结点移到树的根结点,在找的过程中,把其哈夫曼编码存入一个栈,把栈中所有元素(0或1)写到缓冲区,如果缓冲区比特数到8了,则将缓冲区的8个比特(一个字节)写入压缩文件。如果最后缓冲区不到8比特,则在低位补零,补齐8位后写入压缩文件。 解压: 以二进制可读形式打开解压文件,以二进制可写形式打开解压目标文件。每次从解压文件读一个字节,放入缓冲区,然后从缓冲区每次读一个比特。在建立的哈夫曼树中,从根结点开始,取出的比特为0则取左孩子,为1取右孩子,直至到叶子结点,把叶子结点的字节(ASCII码)写入解压目标文件。读到缓冲区为空时,再读入一个字节,重复上述操作,直到读完压缩文件。 模型实质: 以二进制读取文件。从源文件每次读一个字节(8比特),并统计所有出现字节的频率,根据频率对所有字节以频率作为权值建立哈夫曼树,对每个字节重新编码。根据新的编码进行编码译码。 算法设计与分析 如果已知出现字符的出现频率,将较短的比特串分给高频字符,将较长的比特串分给低频字符,则会到压缩文件的目的。哈夫曼编码就是利用这一点,以字符作为叶子结点,以其频率作为权值,建立最优二叉树。 一 下面先重点讨论一下建立哈夫曼数的算法。哈夫曼算法: 根据给定叶子结点及其权值(这里即字符及其频率)构成二叉树的集合,每个叶子结点作为一棵树的根结点。 在二叉树集合中选取根结点权值最小的树作为左右子树构造新的二叉树,且新二叉树的权值为左右子树权值之和。 从二叉树集合中删除这两棵树,将新构造的树加入集合 4 . 重复2,3,直至二叉树集合中只有一棵树。
1
学生通讯录管理系统 主要内容: 本系统可实现学生通讯录的信息管理,便于老师、同学进行管理、分析和使用。系统的主要功能如下: ①输入数据建立通讯录。建立通讯录系统,可以一次输入多个成员通讯录的信息,建立通讯录; ②查询通讯录中满足要求的信息。分别按2种方式查询所需要的通讯录成员记录,一是按学号,二是按姓名; ③插入新的通讯录信息。每次可以插入一个成员通讯录的信息,如果要连续插入多个成员通讯录信息则必须多次选择该功能; ④删除不需要的通讯录信息。可按3种方式进行删除,分别:按序号删除、按学号删除和按姓名删除; ⑤查看所有的通讯录信息。显示通讯录中所有成员信息。
2021-12-21 09:14:58 7KB 数据结构课程设计
1
这是一个数据结构课程设计,里面有详细的代码,包含报告
2021-12-20 23:14:12 484KB 数据结构 图书管理系统
1
摘要 本文叙述的是航空客运订票系统,作为一个订票系统主要面对的对象是顾客,其主要功能是实现查询航线、客票预定、办理退票等业务。根据设计的要求和所学知识,可以通过C++语言实现此系统。 首先,需要建立存储客户和航班信息的链表及候补队列,其次需要通过对链表的插入、删除来完成客户的订票和退票业务,添加录入航线并通过遍历来完成对航线的查询,最后通过输出函数将所有结果输出。
2021-12-20 22:47:26 1.53MB 课设
1
任何一个学校或者公司都离不开一个高效的管理系统。对于学校而言,学生的成绩管理系统是最经常使用的一个系统,因而,开发一个高效,方便的成绩管理系统是我们要研究的课题。
2021-12-20 22:39:27 112KB 成绩管理
1
数制转换(支持小数) 包含源码,代码类几乎每个功能块都有注释 纯个人原创
2021-12-20 20:04:47 151KB 数制转换 c语言
1
1.给定一关键字序列,用除留余数法构造hash函数,用线性探测再散列解决冲突构造hash表; 2.给定一个关键字进行查找,返回其位序(如不存在返回0值);
2021-12-20 19:36:27 135KB 哈希函数的应用
1
进程状态转换源代码+报告,绝对是可以用的。。。。。。。。
2021-12-20 16:43:00 358KB 操作系统 进程状态
1