各位看官们,大家好,上一回中咱们说的是表达式求值的例子,该例子使用了栈,这一回咱们说的是栈的
兄弟:队列。闲话休提,言归正转。让我们一起talk C栗子吧!
我们在这里说的队列是一种抽象的数据结构,大家不用想的太抽象了,哈哈,其实它和我们日常生活中所
见的队列一样。不管怎么样,我们还是举一个容易理解的例子:大家在假期出去旅游的时候,都有过排队
买门票的经历吧。游客们在售票点的窗口前排成了一长串队列,售票人员先把门票卖给排在队列前面的游
客,买到门票的游客拿着门票兴高采烈地离开了队列,刚来到售票点的游客排在队列尾部默默地等着购买
门票。在这个例子中,游客们为了购买门票在售票点旁边排成一条长队,这条长队可以看作是队列,队列
里的游客可以看作是队列中存放的元素。买到门票的游客离开队列,可以看作是从队列中删除元素,想要
购买门票的游客排到队列里,可以看作是向队列中插入元素。我这么说,大家还觉得队列抽象吗?如果觉
得抽象的话,下次旅游购买门票时多留意一下就可以。
我们来说一下队列的特点:
1.队列有头也有尾。比如刚才例子中,先购买到门票的游客可以看作是队列头部。刚刚排到队列里的游客
可以看作是队列的尾部。
2.从队列中删除元素只能在队列头部进行。比如刚才例子中购买到门票的游客离开队列,可以看作是从队
列头部删除了一个元素。
3.向队列中插入元素只能在队列尾部进行。比如刚才例子中想要购买门票的游客排到队列里,可以看作是
向队列中插入一个元素。
4.队列中的元素遵守”先进先出“的规则。比如刚才例子中先排队的游客可以先购买到门票。
看官们,正文中就不写代码了,详细的代码放到了我的资源中,大家可以点击这里下载使用。这个队列是
通过顺序存储的方式实现的,具体到代码中是使用了一个数组来从充当队列。
各位看官,关于队列的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解。
版权声明:本文为博主原创文章,未经博主允许不得转载。