数据结构问答3

1. 栈、队列、线性表的区别与联系(异同)

答:

栈和队列联系:逻辑结构都是线性结构;存储结构都可以采用顺序存储结构和链式存储结构;他们的数据元素都呈线性关系,是一种的线性表,且只允许在端点处插入和删除元素

栈、队列和线性表联系:栈和队列都是一种操作受限的线性表。

区别:线性表可以在中间和两端任何地方插入和删除元素,而栈只能在同一端插入和删除元素,具有后进先出的特点、队列只允许在一段插入元素,另一端删除元素,具有先进先出的特点。

2. 顺序栈和链栈判空、满的条件?

答:

顺序栈(初始化top = -1);(初始化top = 0)

进栈:s[++top]=x             ;s[top++]=x

出栈:x=s[top--]              ;x=s[--top]

判空:top==-1                 ; top == 0

判满:top==maxsize-1    ; top==maxsize   (静态分配的)

链栈(带头结点初始化head->next=NULL)  -----   不考虑满的情况(因为是动态分配的)

栈空:head->next==NULL(出栈同理单链表删除第

你可能感兴趣的:(数据结构复习打卡,数据结构)