线性表笔记

来源:互联网 发布:网络应急演练记录 编辑:程序博客网 时间:2024/06/08 21:04

2、1线性表的逻辑结构

      1、线性表是N>=0个具有相同类型的数据元素的有限序列。

            空表是长度等于零的线性表。

      2、特性:有限性、相同性、顺序型。

 2、2线性表的顺序存储结构及实现

      1、C++中数组的下标是从0开始的,而线性表中元素的序号是从1开始的。线性表中第i个元素存储在数组中下标为i-1的位置。

      2、顺序表的实现:(1)先看线性表是否已满(length是否等于mainsize)(2)1=《i《=length+1  (3)移动元 素 (4)插入元素 (5)length++

      3、顺序表的优点:无需为表示表中的元素之间的逻辑关系而增加额外的存储空间;随即存储,可以快速的存取表中任意位置的元素。

       4、顺序表的缺点:插入删除操作需要移动大量的元素;预先分配空间需按最大空间分配,利用不充分;表容量难以扩充。

2、3线性表的连接存储结构及实现

     1、 用任意的一组存储单元存储线性表的数据元素;利用了指针实现了用不相邻的存储单元存放逻辑上相邻的元素;每个数据元素A,除存储信息本身外,还需存储其直接后继的信息。

*结点   数据域:元素本身信息。        指针域:只是直接后继的存储信息。

      2、单链表的基本运算

        (1)查找:查找单链表中是否存在结点X,若有则返回指向X结点的指针,否则返回NULL。

        (2)插入:在线性表两个数据元素a和b之间插入X,已知P指向A。

        (3)删除:单链表中删除B,设P指向A。

       *单链表的特点:它是一种动态结构,整个存储空间为多个链表共用;不需预先分配空间;指针占用额外存储空间;不能随机存取、查找速度慢。

      3、循环链表

          循环链表是表中最后一个结点的指针指向头结点,使链表构成环状。

         * 特点:从表中任意i节点出发均可找到表中其他节点,提高查找效率。

           操作与单链表条件基本一致,循环条件不同。单链表 p或p->next=NULL  循环链表p或p->next=p

2、4顺序表及链表的比较

2、5线性表的其他存储方法

0 0
原创粉丝点击