指针与动态数据结构
1. 动态数据结构概述
动态数据结构是一种能在程序执行过程中动态扩展和收缩的结构。与传统的数组不同,传统数组在编译前就需要确定最大长度,而动态数据结构可以根据程序运行时的需求来分配和释放内存。
动态数据结构的优势在于其灵活性。程序可以在运行时根据输入数据的信息来决定所需的内存空间大小和存储的数据类型。例如,通过使用动态内存分配函数,程序可以延迟设置列表的最大长度,甚至可以为每个列表成员单独分配空间,从而不会对列表大小设置上限。
动态数据结构还可以通过将动态分配的结构(节点)链接在一起,形成复合结构。这些复合结构可以根据程序的执行情况进行扩展和收缩,并且易于添加或删除节点。
2. 指针的回顾
在深入研究动态数据结构之前,我们需要回顾指针的性质和用途。指针变量存储的不是数据值,而是包含数据值的另一个内存单元的地址。
2.1 指针变量与普通变量的区别
以指针变量 nump 和整数变量 num 为例,变量 num 的直接值是整数 3,而变量 nump 的直接值是存储 3 的内存单元的地址。通过 nump 存储的指针,我们可以访问值 3,这意味着 3 是 nump 的间接值。
nump
num
3
Explanation
Value
Reference
num
nump
*nump
Direct value of num
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



