定义:
栈是限定仅在表尾进行插入或删除操作的线性表。因此,对栈来说,表尾端有特殊含义,称为栈顶,相应地,表头端称为栈底。不含元素的空表成为空栈。
示意图:
顺序栈的表示和实现
可以在初始化时分配一块连续的内存,base指向其起始地址, top指向栈顶;当入栈的时候,数据存放在top上,然后将top增一;出栈的时候,将top减一,然后取出top所指地址的数据。
链栈的表示和实现
参考线性表操作的特例,链栈的操作易于实现。
代码实现:
可以见栈的应用篇。
定义:
栈是限定仅在表尾进行插入或删除操作的线性表。因此,对栈来说,表尾端有特殊含义,称为栈顶,相应地,表头端称为栈底。不含元素的空表成为空栈。
示意图:
顺序栈的表示和实现
可以在初始化时分配一块连续的内存,base指向其起始地址, top指向栈顶;当入栈的时候,数据存放在top上,然后将top增一;出栈的时候,将top减一,然后取出top所指地址的数据。
链栈的表示和实现
参考线性表操作的特例,链栈的操作易于实现。
代码实现:
可以见栈的应用篇。