每日一题735. 行星碰撞

Posted 爱写Bug的王六六

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一题735. 行星碰撞相关的知识,希望对你有一定的参考价值。

735. 行星碰撞

很有意思的一道题

总结:留下绝对值最大的那个,如果绝对值相同就都没了。

简单栈模拟运用题。
由于碰撞抵消总是从相邻行星之间发生,我们可以使用「栈」来模拟该过程。

从前往后处理所有的 asteroids[i],使用存储当前未被抵消的行星,当栈顶元素方向往右,当前 ats[i]ats[i] 方向往左时,会发生抵消操作,抵消过程根据规则进行即可。

  • Deque(double-ended queue,双端队列)是一种具有队列和栈的性质的数据结构。

  • ArrayDeque.peekLast() 此方法检索但不删除此双端队列的最后一个元素,如果此双端队列为空,则返回null。

  • ArrayDeque.pollLast() 此方法检索并删除此双端队列的最后一个元素,如果此双端队列为空,则返回null。

class Solution 
   
    

以上是关于每日一题735. 行星碰撞的主要内容,如果未能解决你的问题,请参考以下文章

[LeetCode] 735. Asteroid Collision

LeetCode 735 行星碰撞[栈 模拟] HERODING的LeetCode之路

Java每日一题——>剑指 Offer II 037. 小行星碰撞

Java每日一题——>剑指 Offer II 037. 小行星碰撞

LeetCode 0735.行星碰撞:两种方法(方法二是方法一的优化)

数据结构与算法之深入解析“行星碰撞”的求解思路与算法示例