数据结构(二)线性表 (顺序存储结构与链式存储结构)

二、线性表(掌握纲要)

1.线性关系、线性表的定义,线性表的基本操作;

2.线性表的顺序存储结构与链式存储结构(包括单(向)链表、循环链表和双向链表)的构造原理;

3.在以上两种存储结构的基础上对线性表实施的基本操作,包括顺序表的插入与删除、链表的建立、插入与删除、查找等操作对应的算法设计(含递归算法的设计)。

 

 

具体内容:

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第1张图片

1.线性关系、线性表的定义,线性表的基本操作;

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第2张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第3张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第4张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第5张图片

 

 

2.线性表的顺序存储结构与链式存储结构(包括单(向)链表、循环链表和双向链表)的构造原理;

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第6张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第7张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第8张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第9张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第10张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第11张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第12张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第13张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第14张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第15张图片
数据结构(二)线性表 (顺序存储结构与链式存储结构)_第16张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第17张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第18张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第19张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第20张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第21张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第22张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第23张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第24张图片

 

 

 

 

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第25张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第26张图片
数据结构(二)线性表 (顺序存储结构与链式存储结构)_第27张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第28张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第29张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第30张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第31张图片

          数据结构(二)线性表 (顺序存储结构与链式存储结构)_第32张图片

 

 数据结构(二)线性表 (顺序存储结构与链式存储结构)_第33张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第34张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第35张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第36张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第37张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第38张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第39张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第40张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第41张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第42张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第43张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第44张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第45张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第46张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第47张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第48张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第49张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第50张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第51张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第52张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第53张图片

 

 

 

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第54张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第55张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第56张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第57张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第58张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第59张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第60张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第61张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第62张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第63张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第64张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第65张图片

 数据结构(二)线性表 (顺序存储结构与链式存储结构)_第66张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第67张图片

 

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第68张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第69张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第70张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第71张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第72张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第73张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第74张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第75张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第76张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第77张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第78张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第79张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第80张图片

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第81张图片

 

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第82张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第83张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第84张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第85张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第86张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第87张图片

 

 

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第88张图片

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第89张图片

下面方法为加入一个p结点后,判断链表从【头结点】到【p指针指向的结点】之间有没有与p->data相等的值,

有则删除p结点,没有则p指向下一个结点

数据结构(二)线性表 (顺序存储结构与链式存储结构)_第90张图片

上面的方法有点笨,就是每判断一个结点都要从头全部判断一遍,有n个相同的值的话,就得重复遍历n-1次来减去相同的数据的结点。

 

较快的做法是,

定义指针p为从头结点开始,q初始化为q的下一个指针,r定义为q的前一个指针,遍历q,删除与p相同数据的结点。

这样一个循环就可以将所有与p相同的结点都删除了。

不过这个做法也是O(n^2). 

但理论上比前一个做法优秀一点。

 

你可能感兴趣的:(数据结构)