小言_互联网的博客

线性表的存储结构02

277人阅读  评论(0)

线性表的存储结构
一;线性表作为一种基本的数据结构类型,在计算机存储器中的映像(或表示)一般有两种形式,一种是顺序映象,一种是链式映象
二:线性表的顺序顺序存储结构:
1:若将线性表L=(a0,a1,-------an-1)中各元素依次存储于计算机一片连续的存储空间,这种机构表示为线性表的顺序存储结构,

         地址          映射图     说明
          b;           a0;       每个元素占d个单元
          b+d;         a1;       假设loc(a1)a1的地址值
          ---          ----      Loc(a0)=b
          b+i*d;       ai        Loc(a1)=b+1*d
          ------       ----       -----------
          b+(n-1)*d    an-1      Loc(an)=b+i*d

3:顺序存储结构的特点:
(1)逻辑上相邻的元素ai,ai+1.其存储位置也是相邻的
  (2)对数据元素a 的存取为随机存取或按地址存取。
  (3)存储密度高,存储密度D=(数据结构重元素所占的存储空间)/(整个数据元素所占的空间)
 4:顺序存储结构的不足:
 (1)对表的插入和删除等运算时间复杂度较为复杂
 5:线性表的动态分配存储结构
 


      #define     LIST_INIT_SIZE   100  //线性表存储空间的初始分配量
      #define     LISTINCREMENT  10  //线性表的分配增量
      typedef struct{
      ElemType  *elem;  //存储空间基值
      int       length //当前长度
      int      listsize //当前分配的存储容量
      }SqList;       

转载:https://blog.csdn.net/qq_45712783/article/details/102300106
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场