1、入队:将新元素添加到队列的尾部。
2、出队:将队列的头部元素删除。
3、取队头元素:获取队头元素,但不删除。
4、取队尾元素:获取队尾元素,但不删除。
拓展:
5、清空队列:将队列的所有元素都删除。
6、判空:判断队列是否为空,即队列中是否有元素。
7、获取队列长度:获取队列中元素的个数。
8、遍历队列:将队列中的所有元素都访问一遍。
有两个地方有错误:1.
void init(linkqueue *p) 这个函数定义写错了 应为
void init(linkqueue * &p)
2.
void visit(linkqueue *p)
{
linkqueue *q
q=p->front->next
printf("输出队列:\n")
if (p->front==p->rear)
printf("这个队列为空!")
else {while(q!=null)
{
printf("%d->",q->front->data)
q=q->front->next}
}
printf("\n")
}
这个错了好几个地方,q定义错了,也使用错了正确的应该这样:
void visit(linkqueue *p)
{
qnode *q // 这行改
q=p->front->next
printf("输出队列:\n")
if (p->front==p->rear)
printf("这个队列为空!")
else {while(q!=null)
{
printf("%d->",q->data)//这行改
q=q->next}//这行改
}
printf("\n")
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)