数据结构之队列
队列就太好理解了,除非你没有排过队。队列同样是一种特殊的线性表,只是它只能从头部出去,从尾部进入。
既然是线性表,同样也存在顺序表和链表,下面会介绍。
由于队列的特殊性质,它的实现可以不采用顺序表那种插入删除时间复杂度为 O(n) 的算法,而是利用两个指针,构造一个循环顺序队列。
这样,添加删除的时间复杂度都是 O(1) ,循环队列代码如下:
队列就太好理解了,除非你没有排过队。队列同样是一种特殊的线性表,只是它只能从头部出去,从尾部进入。
既然是线性表,同样也存在顺序表和链表,下面会介绍。
由于队列的特殊性质,它的实现可以不采用顺序表那种插入删除时间复杂度为 O(n) 的算法,而是利用两个指针,构造一个循环顺序队列。
这样,添加删除的时间复杂度都是 O(1) ,循环队列代码如下: