• Stacks and Queues 225, 739


    1. Daily Temperatures
      题目: 给一个整型数组,表示每一天的温度,输出一个整型数组,返回每一天温度比当天温度大的天数的index与当前位置的差值。如果在未来没有比当前天温度更高的时候,返回0

    思路:暴力解法:两个指针,一个指针指向当前天的温度,另一个指针遍历剩下天数的温度,记录第一次出现比当前温度高的天数的index, 两者做差即为最后结果

    优化: 利用栈结构 还是 队列结构? 栈结构 弹出 和 压入规则是关键 根据温度变化的趋势做判断? 如果温度持续上升 全部为1,持续压入,如果温度一直下降,先压入等待后面的弹出?

    1. Asteroid Collision
      题目:给一个整型数组,绝对值表示小行星的大小,正负号表示小行星的运动方向,相向运动的小行星会发生碰撞,较小的小行星发生爆炸,较大的小行星继续运动,如果两个相撞的小行星大小相等,则两个一起爆炸,返回最后剩余的小行星,输出整型数组

    思路: 用一个stack,从左向右遍历输入的数组,记录正数,如果遇到了负数且stack不为空,那么比较当前的负数与stack.peek(), 如果负数大,则将stack.pop(),继续比较,直到stack.peek() > 负数 或 stack为0, 若stack为空,将负数存到最后的res数组当中,若不为空,继续向右遍历,当遍历到数组末端时,将stack当中所有的元素pop() 出来

    Q: 数组的大小如何确定? 动态数组?

  • 相关阅读:
    python--threading多线程总结
    云服务器 ECS Linux CentOS 修改内核引导顺序
    日记——心刊
    64位linux安装wine等软件
    service: no such service mysqld 与MySQL的开启,关闭和重启
    python调用chrome ie等浏览器
    Linux系统下强制踢掉登录用户
    python读取数据库数据,读取出的中文乱码问题
    jmeter生成时间的函数
    PHP 递归超过100次会自动停止
  • 原文地址:https://www.cnblogs.com/kong-xy/p/9081449.html
Copyright © 2020-2023  润新知