假设以带头结点的循环链表表示队列,并且只设一个指针指向队尾元素节点(注意不设头指针),编写相应的队列初始化、入队列和出队列的算法。
入队列:
创建新的链表节点,并将新节点的值设置为要入队的值。将新节点插入到队尾元素节点之后。更新队尾元素节点的指针指向新节点。更新队列大小。出队列:
如果队列为空,返回null或者抛出异常。获取头结点的下一个节点,即要出队的节点。将头结点的下一个节点更新为要出队节点的下一个节点。更新队列大小。返回要出队的节点的值。