数据结构之栈与队列

栈是限定仅在表尾进行插入和删除操作的线性表
队列是只允许在一端插入数据在另一端删除数据的线性表

顺序栈与链栈对比

插入删除时间复杂度均为O[1]
对于空间复杂度,顺序栈需要事先确定长度,会存在内存空间浪费问题 ;链栈存取定位方便,但需要指针域增大存储开销。如果栈的长度不确定,使用链栈,反之使用顺序栈比较合适。

串是指零个或多个字符组成的有限序列,又叫字符串。

串的顺序存储一般使用定长数组进行定义,对于字符串操作存在的溢出问题,串值的存储空间在执行过程中动态分配堆内存,由动态分配函数malloc()和free()来管理

串的链式存储结构除了在串的连接操作会方便一些,总体不如顺序结构灵活,性能也不如顺序存储结构

你可能感兴趣的:(数据结构之栈与队列)