数据结构大型作业.ppt

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构大型作业

数据结构 大型作业 * * 题目一 线性表管理 输入多个同类型(整型)的线性表,以链表形式存放数据元素,每个链表要求有一个名称(名称长度为6至12个字符的字母数字结合的字符串,不能包含其它字符),将链表作为数据元素,用顺序存储结构进行存储管理。完成: 1 创建线性表; 1.1 先进先出表 1.2 先进后出表 1.3 有序表 2 销毁线性表; 3 将新数据元素插入到指定的线性表中; 4 数据元素删除 4.1 删除指定线性表中的第i个数据元素 4.2 删除指定线性表中的满足某种条件的数据元素 5 排序 5.1 升序 5.2 和降序 6 合并 将2个排序好(同序)的链表合并 6.1 链表A和链表B排序后结果在A中,B销毁 6.2 链表A和链表B排序后结果在C中,A、B不变 一般合并 6.3 链表A和链表B首尾相连在A中,B销毁 7 链表显示。 7.1 全部显示 7.2 根据名称显示 题目二 算术表达式求值 输入一个算术表达式,完成: 1 计算表达式的值; 2 生成表达式二叉树; 3 根据表达式二叉树求表达式的值 4 先序遍历表达式二叉树,根据先序遍历序列(波兰式)求表达式的 值; 5 中序遍历表达式二叉树,要求恢复必要的括号; 后序遍历表达式二叉树,根据后序遍历序列(逆波兰式) 求表达式的值; 树结点类型 typedef struct node { int kind; 结点类型 1 操作数 0 运算符 union { int op; char opr; } data; struct node *lchild,rchild; } NODE; NODE *p; if (p-kind==0) p-data.opr 有效(如p-data.opr=‘+’;) else p-data.op 有效(如p-data.op=123;) 表达式求值 例:4 + 2 * 3 – 10 / ( 7 – 5 ) ① ③ ② ④ ⑤ 求值规则: 1.先乘除,后加减; 2.先括号内,后括号外;3.同类运算,从左至右。 约定: ?1----左算符 ?2----右算符 ?1=#,为开始符 ?2=#,为结束符 算符优先关系表 = = + - * / ( ) # + - * / ( ) # ?1 ?2 运算符优先级的存储 1。运算符表 char opr[7]={‘+’, ‘-’, ‘*’, ‘/’, ‘(’, ‘)’, ‘#’}; 2. 优先级表。 int table[7][7]= { { 1, 1,-1,-1,-1,1,1}; 。。。。。。。。 {-1,-1,-1,-1,-1,3,0}; }; 3表示错误。 题目三 哈希表及其应用 建立一个小型信息管理系统(可以是图书、人事、学生、物资、商品等任何信息管理系统)。 要求: 1 使用哈希查找表存储信息; 2 实现查找、插入、删除、统计、输出等功能; 3 尝试使用多种哈希函数和冲突解决方法,并通过实际运行测试给出自己的评价。 题目三 图的基本操作的实现 1 自选存储结构,输入含n个顶点(用字符表示顶点)和e条边的图G; 2 求每个顶点的度,输出结果; 3 指定任意顶点x为初始顶点,对图G作DFS遍历,输出DFS顶点序列(提示:使用一个栈实现DFS); 4 指定任意顶点x为初始顶点,对图G作BFS遍历,输出BFS顶点序列(提示:使用一个队列实现BFS); 5 输入顶点x,查找图G:若存在含x的顶点,则删除该结点及与之相关连的边,并作DFS遍历(执行操作3);否则输出信息“无顶点x”; 6 判断图G是否是连通图,输出信息“OK!”/“NO!”; 7 如果选用的存储结构是顶点数组和邻接矩阵,则用顶点数组和邻接矩阵的数据信息生成图G的邻接表,即复制图G,然后再执行操作(2

文档评论(0)

tangzhaoxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档