一、线性表顺序表示

InitList(&L) 、LocateElem(L,x,compare())、ListInsert(&L,i,e )、ListDelete( &L, i, &e)

数据结构之线性表

 数据结构之线性表

 数据结构之线性表

 数据结构之线性表

。。。。。。部分的代码,下图

 数据结构之线性表

 数据结构之线性表

 数据结构之线性表

 为什么表尾的表达式不能是q=L.length-1;

因为顺序存储结构(实际上就是数组)中,L.elem表示线性表l中存储数据(数组)的基地址(起始地址),L.length是表的长度(数据元素个数),q是指针通过上式计算后指向尾元素和数组的情况一样,

例如:int a[5],*p=a;//p指向第一个元素
p=a+1;//指向第二个元素
则:p=a+5-1;指向最后一个数组元素,即a[4]

二、线性表链式

数据结构之线性表

                                                                                             图一

 数据结构之线性表

                                                                                                 图二

 

图1是在节点p的后面插入节点,图2是在节点p的前面插入,插入原则都是保证了与p相连的节点先与插入节点相连,再连p节点,保证不断链,因为只有p是已知的,一旦先连节点p,另一个节点位置就找不到了

 数据结构之线性表

 数据结构之线性表

 

相关文章:

猜你喜欢
  • 2021-08-01
相关资源
相似解决方案