第03基本数据结构及运算-1线性表.ppt

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章?基本数据结构及运算 第三章?基本数据结构及运算 第三章?基本数据结构及运算 第三章?基本数据结构及运算 第三章?基本数据结构及运算 第三章?基本数据结构及运算 第三章?基本数据结构及运算 DS1=(D1,R1) 集合表示法 D1={k1,k2,k3,k4} R1={(k1,k2),(k2,k3),(k3,k4)} DS2=(D2, R2) D2={k1, k2, k3} R2={(k1, k2), (k1, k3)} 识别“体”字的过程 链表的一个重要特点是插入、删除运算灵活方便,不需移动结点,只要改变结点中指针域的值即可 例 管理信息系统中的查询问题 各种计算机管理信息系统中,通常相关的信息(记录)组成一个表文件,表文件是一类很重要的数据结构 3.2.1.线性表的逻辑结构 线性表逻辑结构 n个数据元素的有限序列:(a1, a2 ,a3,…an) n为线性表的长度(n≥0),n=0的表称为空表 特性: 数据元素呈线性关系. 所有数据元素ai在同一个线性表中须是相同的数据类型 例: 学生表 线性表的基本运算: (1)插入:在两个确定的元素之间插入一个新的元素; (2)删除:删除线性表中某个元素; (3)修改:按某种要求查找线性表中的一个元素,需要时,还可找到元素进行值的更新 编写算法的一般步骤 1、分析问题描述 输入,输出及模块功能等 2、分析算法实现的总体框架,关键问题的突破方法 3、核心算法的实现 4、算法补充完善, 如: 增加算法有效性的保护措施——越界判断等 其它更高效的算法实现? Linklist creat() {linklist head,p1,p2; n=0;p1=p2=(struct lnode*)malloc(LEN); scanf(“%d”,p1-data);head-next=NULL; while(p1-data!0) {n=n+1; if(n==1) head-next=p1; else p2-next=p1; p2=p1;p1=(struct lnode*)malloc(LEN); scanf(%d”,p1-data);p2-next=NULL; }return(head);} Head p1 p2 15 ∧ n=1 Linklist creat() {linklist head,p1,p2; n=0;p1=p2=(struct lnode*)malloc(LEN); scanf(“%d”,p1-data);head-next=NULL; while(p1-data!0) {n=n+1; if(n= =1) head-next=p1; else p2-next=p1; p2=p1;p1=(struct lnode*)malloc(LEN); scanf(%d”,p1-data);p2-next=NULL; }return(head);} Head p1 p2 15 Linklist creat() {linklist head,p1,p2; n=0;p1=p2=(struct lnode*)malloc(LEN); scanf(“%d”,p1-data);head-next=NULL; while(p1-data!0) {n=n+1; if(n= =1) head-next=p1; else p2-next=p1; p2=p1;p1=(struct lnode*)malloc(LEN); scanf(%d”,p1-data);p2-next=NULL; }return(head);} Head p1 p2 15 Linklist creat() {linklist head,p1,p2; n=0;p1=p2=(struct lnode*)malloc(LEN); scanf(“%d”,p1-data);head-next=NULL; while(p1-data!0) {n=n+1; if(n= =1) head-next=p1; else p2-next=p1; p2=p1;p1=(struct lnode*)malloc(LEN); scanf(%d”,p1-data);p2-next=NULL; }return(head);} Head p1 p2 15 Linklist creat() {linklist head,p1,p2; n=0;p1=p2=(struct lnode*)malloc(LEN); scanf(“%d”,p1-data);head-next=NULL; while(p1-data!0

文档评论(0)

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

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

1亿VIP精品文档

相关文档