[高等教育]线性表.pptVIP

  • 4
  • 0
  • 约7.8千字
  • 约 44页
  • 2018-03-05 发布于浙江
  • 举报
[高等教育]线性表

第三章 链 表 3.1 线性链表 3.2 循环链表 3.3 双向链表 3.1 线性链表 一、 链表的定义 链表和数组是程序语言中使用内存常用的方法,两者都为“线性表”,就像火车一般,一个车箱接着一个车箱有顺序的连在一起。但有不同: 数组结构——必须在程序编译前就定好数组元素的大小(静态内存分配),因此常需事先预估数据量的多少;数据元素在内存中连续存放,所以在删除或增加元素之后,其后的元素都必须跟着移动,降低了执行效率。 链表结构——在程序执行阶段才向任务系统要求分配所需的内存空间(动态内存分配);数据元素在内存中位置不一定相邻,所以每一项数据都有一个链接字段,可以存放下一个数据的地址,如此便可形成表结构。 二、链表的特点 链表中结点的逻辑次序和物理次序不一定相同。即:逻辑上相邻未必在物理上相邻。(注意与顺序表区别) 结点之间的相对位置由链表中的指针域指示,而结点在存储器中的存储位置是随意的。 三、结点的组成 数据域——表示数据元素自身值。 指针域(链

文档评论(0)

1亿VIP精品文档

相关文档