《数据结构()第2章 线性表71》由会员分享,可在线阅读,更多相关《数据结构()第2章 线性表71(71页珍藏版)》请在金锄头文库上搜索。
1、CS/*存放线性表元素的数组,类型可以变化*/int len; /*表示线性表的长度*/sqlist; /* sqlist是数据类型,此处表示线性表的顺序存 储结构*/2.3 顺序表的类型定义CSchar name20;char author10;char publisher30;float price; DATATYPE; DATATYPE libraryM; 备用空间数据元素不是简单类型时,可定义结 构体数组顺 序 表 的 图 示CS lenth=(*L).len; return(lenth); /*返回线性表的长度*/ CS (3)把第i个元素后的所有元素依次向前移 动一个位置; (4)
2、线性表长度减1。顺序表的删除算法CSstruct node *next; Lnode,*linklist; /* Lnode为结点类型,linklist为指向结点的指针类型*/单链表的建立CS或 linklist h,p; /p,h为变量 p=(LNode *)malloc(sizeof(Lnode);/P有操作对象 此时,P和对象之间的关系:datanextp结点(*p)(*p)表示p所指向的结点 (*p).datap-data表示p指向 结点的数据域 (*p).nextp-next表示p指向 结点的指针域使用注意事项CS /*学生学号*/ char NameMax; /*学生姓名*/ st
3、ruct stu *Next; /*指向后继节点的指针*/ student; 34CS free(Pointer);CS p-next=s-next; free(s); CS struct dulnode *next,*prior; dulnode; 68priorelementnextCSCS或: P=head-next;处理对象ai*p下一对象i+;P=p-next;循环条件in(长度)P!=NULLCS&T Information Course本节学习要点1. 了解顺序表、链表的概念、含义、区别。 2. 熟练掌握这两类存储结构的描述方法。 3. 熟练掌握线性表在顺序存储结构上实现基本操作 :查找、插入和删除的算法。 4. 熟练掌握在单链表结构中实现线性表操作的基本 方法,能在实际应用中选用适当的链表结构。71