程序设计综合实践教学课件1-4-1 线性表的链式存储-单链表的概念.pptxVIP

  • 1
  • 0
  • 约1.16千字
  • 约 8页
  • 2021-10-13 发布于安徽
  • 举报

程序设计综合实践教学课件1-4-1 线性表的链式存储-单链表的概念.pptx

四、线性表的链式存储采用链式存储结构,有利于线性表的插入、删除操作,每个结点中只有一个“链”时,称为单链表,每个结点中有两个“链”时,称为双向链表。“链”通常用指针来表示,线性表的链式存储结构也是实现复杂数据结构的基础。4.1 单链表的概念图1.2 单链表结点和单链表示例一般结点类型定义如下:struct Node { DataElem data; struct Node *next;};struct Node *p, *q; //声明指针型变量p、q特别需要注意指针变量p和p所指结点的区别。指针变量p和p所指结点是独立存在的当p是空指针时,禁止通过空指针访问结点内数据域或指针域通过非空指针变量p可访问结点的数据域p-data和指针域p-nextp-data和p-next既可作为右值、又可作为左值出现在表达式中。右值和左值是表达式中语法单位,意味着可出现在赋值运算符右边和左边p-next还是一个指针,只要它非空,可以继续通过它访问所指结点的数据域和指针域,如p-next-data和p-next-next指针变量p未初始化时,不可访问p-next或p-data,否则,可能造成程序崩溃C/C++语言中,动态分配的结点必须释放,否则造成内存泄漏2020302030……常见的指针操作效果示意图 操作操作前操作后p=(struct Node *)malloc(sizeof(

文档评论(0)

1亿VIP精品文档

相关文档