数据结构(Java版) 线性表的实现与应用完整版.doc

数据结构(Java版) 线性表的实现与应用完整版.doc

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

实 验 报 告 课程名称 数据结构 实验项目 线性表的实现及应用 实验仪器 PC机一台 学 院_____ 专 业 班级/学号 姓名 实验日期 成 绩 指导教师 北京信息科技大学 信息管理学院 (数据结构课程上机)实验报告 专业: 班级: 学号: 姓名: 成绩: 实验名称 线性表的实现及应用 实验地点 实验时间 实验目的: 理解用顺序表实现线性表的特点;熟练掌握顺序表的基本操作;学会利用顺序表解决实际应用问题。 熟练掌握单链表的使用;理解用链表实现线性表的特点;了解链表的多种形式;学会利用单链表解决实际应用问题。 实验要求: 学时为8学时; 能在机器上正确、调试运行程序; 本实验需提交实验报告; 实验报告文件命名方法:数据结构实验_信管16xx_学号_姓名.doc。 实验内容和步骤: 第一部分 顺序表的实现与应用 (1)基于顺序表实现线性表的以下基本操作: public interface LListT { //线性表接口,泛型参数T表示数据元素的数据类型 boolean isEmpty(); //判断线性表是否空 int size(); //返回线性表长度 T get(int i); //返回第i(i≥0)个元素 void set(int i, T x); //设置第i个元素值为x void insert(int i, T x); //插入x作为第i个元素 void insert(T x); //在线性表最后插入x元素 T remove(int i); //删除第i个元素并返回被删除对象 int search(T key); //查找,返回首次出现的关键字为key的元素的位序 void removeAll(); //删除线性表所有元素 public String toString();//返回顺序表所有元素的描述字符串,形式为“(,)” } 要求:实现后应编写代码段对每个基本操作做测试。 (2)顺序表的简单应用 运用基本操作编写算法删除第i个开始的k个元素。 编写高效算法删除第i个开始的k个元素。 将两个顺序表合并为一个顺序表(表中元素有序); 若两个元素按值递增有序排列的顺序表A和B,且同一表中的元素值各不相同。试构造一个顺序表C,其元素为A和B中元素的交集,且表C中的元素也按值递增有序排列; (3)利用顺序表解决约瑟夫环问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。要求:输出出列次序。 第二部分 单链表的实现与应用 (4)基于单链表实现线性表的以下基本操作(不需要建立接口,直接建立带头结点的单链表类): ADT ListT { boolean isEmpty(); //判断线性表是否空 int size(); //返回线性表长度 T get(int i); //返回第i(i≥0)个元素 void set(int i, T x); //设置第i个元素值为x NodeT insert(int i, T x); //插入x作为第i个元素 NodeT insert(T x); //在线性表最后插入x元素 T remove(int i); //删除第i个元素并返回被删除对象 void removeAll(); //删除线性表所有元素 NodeT search(T key); //查找,返回首次出现

文档评论(0)

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

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

1亿VIP精品文档

相关文档