数据结构(Java)-第2章解读.ppt

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

NEXT Neusoft 基本内容 1.线性表的定义与运算 第2章 线性表 2.线性表的顺序存储结构 3.线性表的链式存储结构 4.线性表项目实践 一.线性表的定义与运算 1、线性表的定义 简单来说,一个线性表(Linear List)是由n个数据元素组成的有限序列。在同一线性表中的元素具有相同特性,即属同一数据对象。一个线性表通常记作: (a1,a2,…,ai-1,ai,ai+1,…,an) (1)有且仅有一个开始结点a1,它没有直接前驱; (2)有且仅有一个终端结点an,它没有直接后继; (3)除了开始结点a1和终端结点an外,其余结点都有且仅有一个直接前驱和一个直接后继。 简言之,线性表的特点是数据元素之间存在“一对一”的关系。 2、线性表举例 【例2.1】:某大学计算机科学系软件工程专业08级1班《数据结构》课程考试成绩汇总,如下所示: (89.5,66,90,77.5,45,…,79,80) 【例2.2】26个大写英文字母表: (A,B,C,D,E,F…,X,Y,Z) 也是一个线性表。在Java语言中我们可以将其中的元素定义为字符类型char。 【例2.3】 “东软集团新员工入职情况登记表” 序号 姓名 性别 学历 专业 部门 1 孙晓英 女 本科 计算机科学与技术 嵌入式 2 王刚 男 硕士 软件工程 数字医疗 3 李明 男 硕士 软件工程 数字医疗 4 张雷 男 本科 计算机科学与技术 数字医疗 5 郭晓霞 女 硕士 自动化 嵌入式 6 董一 男 本科 软件工程 嵌入式 7 赵军 男 本科 软件工程 嵌入式 8 彭宇 女 本科 英语 数字医疗 9 梁红 女 本科 计算机科学与技术 嵌入式 10 赵启 男 本科 计算机科学与技术 嵌入式 3、线性表的运算 (1)求线性表的长度:length() 初始条件:线性表已存在 操作结果:返回线性表中含有的数据元素个数。 (2)按值查找操作:search(x) 初始条件:线性表已存在 操作结果:在线性表中查找值为x的数据元素,如果存在则返回该元素的序号;如果不存在则返回-1,表示查找失败。 (3)按序号查找操作:getElement(i) 初始条件:线性表已存在 操作结果:在线性表中查找第i个数据元素。假设线性表的长度为length,则i的取值范围是,返回该元素的引用。 (4)插入操作:insert(i,x) 初始条件:线性表已存在 操作结果:将新的数据元素x插入到线性表的第i个位置。 (5)删除操作:remove(i) 初始条件:线性表已存在 操作结果:删除并返回线性表中的第i个数据元素,同时将线性表的长度减1。 (6)判断空表:isEmpty() 初始条件:线性表已存在 操作结果:判断线性表是否为空,如果为空则返回true,否则返回false。 (7)判断线性表是否已满:isFull() 初始条件:线性表已存在 操作结果:判断线性表是否已满,如果已满则返回true,否则返回false。(仅适用于顺序存储时) (8)遍历线性表:showList() 初始条件:线性表已存在,且非空。 操作结果:显示线性表中的所有数据元素值。 (9)清空线性表:clear() 初始条件:线性表已存在,且非空。 操作结果:将线性表重置为一个空表。 /* * 线性表接口 */ public interface LinearListE { int length(); //计算线性表的长度 int search(E x); //按值查找操作 E getElement(int i) throws Exception; //按序号查找操作 void insert(int i,E x)throws Exception; //插入操作 E remove(int i) throws Exception; //删除操作 boolean isEmpty(); //判空表 boolean isFull(); //判断线性表是否已满 void showList(); //遍历线性表 void clear(); //清空线性表 } 二、线性表的顺序存储结构 1、顺序表 线性表的顺序存储结构指的是用一组地址连续的存储单元依次存储线性表中的数据元素。元素在内存中的物理存储

文档评论(0)

22ffbqq + 关注
内容提供者

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

1亿VIP精品文档

相关文档