数据结构浅析(九)

栈是限定仅在表尾进行插入和删除操作的线性表

表尾为栈顶,表头为栈底

栈的特性:先进后出

栈在程序语言设计中可以实现递归

一个直接或间接调用自己的函数,称为递归函数

递归三要素:边界条件,前进阶段,返回阶段

递归优点:代码间接

递归缺点:时间空间消耗大,容易造成栈溢出

尾递归:递归的一种优化,部分语言中可以解决栈溢出问题

知识拓展

函数运行期间调用另一个函数

被调用函数运行前

1.将所有的参数、返回地址等信息传递给被调用函数保存

2.为被调用函数的局部变量分配存储区

3.将控制转移到被调用函数的入口

被调用函数返回调用函数之前

1.保存被调函数的计算结果

2.释放被调函数的数据区

3.依照被调用函数保存的返回地址将控制转移到调用函数

猜你喜欢

转载自blog.csdn.net/a7442358/article/details/80813128
今日推荐