算法入门之队列的链式表示
和线性类似,队列也可以有俩种存储表示。一个链队列需要都两个分别指向队头和队尾的指针(分别称为头指针和尾指针)才能唯一确定。为了操作方便,除了以上两个指针外,我们还为对列添加一个头结点。初始化是头指针和尾指针都指向头结点,因此,当头指针和尾指针均指向头结点时,此队列为空。
1. 定义存储结构:
2. 构建一个空队列Q:
结果如下图:
3.进队:让e进队,作为新的对尾:
结果如下图:
再e1入队列:
4.出队:若队列不为空,则删除Q的对头元素,用x返回其值:
结果如下图:
5.队头:获得队头的值,同样用x返回其值:
6.判读队列是否为空:
7.销毁队列:
8.队列实例运用之杨辉三角如下图:
图示:
注意:队头是Q.front->next;