• 单调栈 、 队列学习


    推荐博客 : https://blog.csdn.net/zuzhiang/article/details/78134247

    单调栈、队列只需满足两个条件即可,序列是单调的,并且符合栈和队列的特性。

    实现:

    例如实现一个单调递增的栈,比如现在有一组数10,3,7,4,12。从左到右依次入栈,则如果栈为空或入栈元素值小于栈顶元素值,则入栈;否则,如果入栈则会破坏栈的单调性,则需要把比入栈元素小的元素全部出栈。单调递减的栈反之。

    10入栈时,栈为空,直接入栈,栈内元素为10。

    3入栈时,栈顶元素10比3大,则入栈,栈内元素为10,3。

    7入栈时,栈顶元素3比7小,则栈顶元素出栈,此时栈顶元素为10,比7大,则7入栈,栈内元素为10,7。

    4入栈时,栈顶元素7比4大,则入栈,栈内元素为10,7,4。

    12入栈时,栈顶元素4比12小,4出栈,此时栈顶元素为7,仍比12小,栈顶元素7继续出栈,此时栈顶元素为10,仍比12小,10出栈,此时栈为空,12入栈,栈内元素为12。

    东北日出西边雨 道是无情却有情
  • 相关阅读:
    問題集リンク(DEV I)
    認定Platformデベロッパー 試験範囲
    React 学习资源
    IIS
    小学校
    リストに項番をつける
    七、JavaScript函数
    六、JavaScript数组
    五、JavaScript流程控制
    四、JavaScript操作符
  • 原文地址:https://www.cnblogs.com/ccut-ry/p/9367715.html
Copyright © 2020-2023  润新知