[Leetcode] The Skyline Problem
2015-08-11 19:46
309 查看
从直观上来理解这个问题如何进行cope with:
我们从最左边向右进行遍历所有的节点,观察在这个节点上的最高度是多少?如果最高高度和上一次监测的最高高度不一致,那么说明这里需要更新。
这里需要注意的是,如果如果当前位置是一个矩形的后边界,那么需要将它的前边界取出候选队列,因为他的影响已经结束了,而且要在将这个值去掉之后再在候选队列当中找最大的高度(这个高度只需加入一次)
为了表示是后边界,我们可以对后边界进行去翻处理。
我们从最左边向右进行遍历所有的节点,观察在这个节点上的最高度是多少?如果最高高度和上一次监测的最高高度不一致,那么说明这里需要更新。
这里需要注意的是,如果如果当前位置是一个矩形的后边界,那么需要将它的前边界取出候选队列,因为他的影响已经结束了,而且要在将这个值去掉之后再在候选队列当中找最大的高度(这个高度只需加入一次)
为了表示是后边界,我们可以对后边界进行去翻处理。
相关文章推荐
- jQuery mouseover与mouseenter,mouseout与mouseleave的区别
- 解决多个Xcode导致的N个模拟器的问题
- 数据结构-线性表(学习笔记)
- leetcode抽风还是被墙
- 《Java开发实战经典》第三章答案3.5
- 介绍以threading模块来实现定时器的方法
- 【错误笔记】GDB调试
- 禁止ScrollView的childview自动滑动到底部
- 关于iOS的强引用,弱引用及strong,retain,copy,weak,assignd的关系
- [iOS]为什么手动打印UITableViewCell的宽度是320高度是44
- C#高级编程八十三天----程序集的含义
- C和指针 (pointers on C)——第三章——数据
- UML用例图
- 将博客搬至CSDN
- redhat替换centos 6.6 yum源
- hdu5375(2015多校7)--Gray code(dp)
- Cocos Studio和Cocos2d-x版本对应关系
- 第五周第一天(数据库)
- PV、UV、IP之间的区别与联系
- 《Java开发实战经典》第三章答案3.4