zoukankan      html  css  js  c++  java
  • 栈和队列总结

         描述:后进先出

         实现:可以用链表,数组

    应用

    A:括号匹配验证

    实现:

        对于左括号进栈,对于右括号判断栈是否为空,若为空,则匹配失败,否则出栈。

    对于只用一种括号的情况:有另一种改进方式,其实可用一个计数变量,初始化为0,直接统计左单括号即可,不用存储括号类型。

     

    B:进制转换

     

    C:算术表达式的计算

        用两个栈:一个存储符号,一个存储数值

    D:递归的应用,保存断点  

    E:深度优先搜索

    F:单调栈

    队列

    描述:先进先出,正由于这个思想,经常用来做缓冲

    实现:数组,链表

    A: 顾名思义,用来排队。比如舞伴配对问题

    B:缓冲队列,用于操作系统中进程调度缓冲

    C:优先级队列 ,用堆实现,根据优先级进行进程调度

    D:用于广度优先搜索,比如迷宫问题点击打开poj题目链接

    E:循环队列

    F:双端队列,队头和对尾都可进可出

    G:单调队列,队列元素保持单调性的队列

  • 相关阅读:
    eclipse使用
    模板模式

    异常处理
    内部类
    面向对象三大特征(三)--多态
    java双指针的简单理解
    简单易懂回溯算法
    《深入理解Java虚拟机》之(一、内存区域)
    Java笔记(第七篇 JDBC操作数据库)
  • 原文地址:https://www.cnblogs.com/zhangfuxiao/p/9416272.html
Copyright © 2011-2022 走看看