距开课0天0时0分-10074510秒
王先生2019-10-09 16:01:51 0 3 2486
[PHP讨论组]源自课程章节:用数组实现队列操作:array_shift()和array_unshift()函数举报回复话题 ↕
队列到底是后进先出,还是先进先出。看老师讲的后进先出,但是,实际结果貌似先进先出?
另外,后进先出,和先进后出有啥子区别?
2
0
分享
十亿亿 2019-10-10 08:38:182楼
你可能吧把栈与队列搞错了。 栈后进先出。队列则先进先出。
赞 +0添加回复
你仔细看我的描述,自己动手多实验几次。不要这么快下结论。我刚开始也以为是老师搞错了。后面仔细推敲,发现是没有错的。只是看你怎么理解。 网上提到的队列,所谓的“先进先出”,指的是排在数组最前面的那些元素先出队而已。并没有体现入队和出队的整体这两个动作连贯的顺序,而只是一个出队的顺序而已。(两个动作连贯起来描述,队列他就是后进先出) 网上提到的堆栈,所谓的“后进先出”,指的是排在数组最后面的那个元素先出栈而已。也并没有体现入栈和出栈这两个动作连贯的顺序,而只是一个出栈的顺序而已。(两个动作连贯起来,堆栈就是 先进后出)
王先生 2019-10-09 18:02:141楼
关于堆栈和队列的模式,个人认为如下解释会不会合理点:堆栈操作(先进后出的模式:指针对新入栈的数据,在出栈的时候按照原来入栈的先后顺序,先入栈的数据后出栈。实际上就是按照入栈完后的排列顺序,从最后一个数据往前出栈)队列操作(后进先出的模式:指的是对新入队的数据,在出队的时候按照原来入队先后顺序,后入队的数据先出队。实际上就是按照入队完后的排列顺序,从最前一个数据往后出队
十亿亿 2019-10-10 08:38:182楼
你可能吧把栈与队列搞错了。 栈后进先出。队列则先进先出。
赞 +0添加回复
王先生 2019-10-09 18:02:141楼
关于堆栈和队列的模式,个人认为如下解释会不会合理点:
堆栈操作(先进后出的模式:指针对新入栈的数据,在出栈的时候按照原来入栈的先后顺序,先入栈的数据后出栈。实际上就是按照入栈完后的排列顺序,从最后一个数据往前出栈)
队列操作(后进先出的模式:指的是对新入队的数据,在出队的时候按照原来入队先后顺序,后入队的数据先出队。实际上就是按照入队完后的排列顺序,从最前一个数据往后出队
赞 +0添加回复