19链表主要内容动态内存分配链表概述单向链表复杂链表主要内容动态内存分配链表概述单向链表复杂链表1 动态内存分配静态和动态内存分配C的动态内存分配函数动态内存分配实例1-1 静态和动态内存分配根据内存分配的时机,C语言的内存分配分为静态内存分配和动态内存分配静态内存分配是在编译时完成,需要在编译前确定需要分配的内存块的大小变量、数组、结构占用存储空间的大小在说明时确定,程序执行过程中不能改变,通常
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级清华大学 黄维通 设计制作第11章 链表及其应用 1清华大学 黄维通 设计制作11.1 链表的基本概念 2清华大学 黄维通 设计制作 链表中的所有数据元素都分别存储在一个个具有相同数据结构的结点里面结点是链表的基本存储单元一个结点与一个数据元素一一对应每个结点内部都是内存中一块连续的存储空间11.1.1 链
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级1线性表可以用数组存储复习:数组的优点:可以直接存取某个元素缺点:1:元素添加删除要移动大量元素2:大小无法预计的情况下可能会造成空间浪费21 链表的表示链式存储结构特点:其结点在存储器中的位置是随意的即逻辑上相邻的数据元素在物理上不一定相邻如何实现通过指针来实现注意:每个存储结点都包含两部分:
在单向链表中一个结点的后续结点是由该结点包含的指针指出的它可以实现对诸如队列(按数据的输入顺序先进先出)堆栈(按数据的输入顺序先进后出)等数据结构类型的数据的操作这种类型的链表如果要查找某个结点必须由链表头指针所指的第一个结点开始顺序查找headNULLhead return (head)datapnext5850§ 链表的删除删除值为6的表项:p
链表7/10/20241结构体如何实现链表?链表的每一节都不是一个简单类型的变量。结构体变量可以完成这样的工作。7/10/20242结构体的定义实例struct node{int num;struct node * next;};7/10/20243创建的方法定义节点类型(结构体类型)生成节点挂接节点,形成链表释放节点7/10/20244生成节点函数void * malloc(unsigned i
#
#
第9 章 尺寸链 . 尺寸链的基本概念——尺寸链的基本术语 尺寸链的建立与分析 尺寸链的建立与分析——查找组成环 尺寸链的计算——计算类型 尺寸链的计算——完全互换法解尺寸链的基本公式3.封闭环的极限偏差封闭环的上偏差: 封闭环的下偏差: 解:设A3是封闭环 解尺寸链的其它方法三调整法
#
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级 补充:链表应用1建立单链表2插入结点4删除结点例题:link.cpp1建立单链表(1) 头插法建表① 算法思路??? 从一个空表开始重复读入数据生成新结点将读入数据存放在新结点的数据域中然后将新结点插入到当前链表的表头上直到读入结束标志为止② 具体算法实现beforecreat( ) 返回单
违法有害信息,请在下方选择原因提交举报