数据结构与算法学习笔记(五)

  1. 静态链表:用数组描述的链表叫做静态链表,这种描述方法叫做游标实现法
  2. 线性表的静态链表存储结构
    1. #define MAXSIZE 1000
      typedef struct {
          ElemType data;  //数据
          int cur;        //游标(Cursor)
      }Component,StaticLinkList[MAXSIZE];
  3. 对静态链表进行初始化相当于初始化数组
    1. Status IntList(StaticLinkList space) {
          int i;
          for (i = 0; i < MAXSIZE - 1 ; i++) {
              space[i].cur = i + 1;
          }
          space[MAXSIZE-1].cur = 0;
          return OK;
      }
  4. 静态链表初始化的特点
    1. 我们队数组的第一个和最后一个元素做特殊处理,他们的data不存放数据
    2. 我们通常把未使用的数组元素称为备用链表
    3. 数组的第一元素,即下标为0的那个元素的cur就存放备用链表的第一个结点的下标
    4. 数组元素的最后一个元素,即下标为MAXSIZE-1的cur则存放第一个有数值元素的下标,相当于单链表的头结点作用

你可能感兴趣的:(数据结构与算法学习笔记(五))