问题:链表,栈,队列(循环队列)判定满或者空的条件?急求

问题:链表,栈,队列(循环队列)判定满或者空的条件?急求

1、为空条件

单链表:头结点指针域next == NULL
静态链表:数组最后一个元素值为0
循环链表:头结点的指针域指向它本身(循环查找时以p->next !=头结点作为遍历结束条件)

顺序存储时:top == -1
链式存储时:top == NULL
队列(队头出队、队尾入队)
①顺序存储

队列 front == rear
循环队列 front == rear
②链式存储
链队列 front、rear均指向头结点

2、为满条件

单链表、循环链表:不存在
静态链表:根据数组长度来判断

顺序存储时:top==数组大小-1
链式存储时:不存在
队列
①顺序存储
队列 可能假溢出
循环队列 (rear+1)% QueueSize == front
②链式存储
链队列 不存在

你可能感兴趣的:(数据结构)