当前位置: 首页 > news >正文

wordpress强制分享代码上海谷歌优化

wordpress强制分享代码,上海谷歌优化,新网站制作公司,编写网站程序给定一个整数数组 asteroids,表示在同一行的小行星。 对于数组中的每一个元素,其绝对值表示小行星的大小,正负表示小行星的移动方向(正表示向右移动,负表示向左移动)。每一颗小行星以相同的速度移动。 找…

给定一个整数数组 asteroids,表示在同一行的小行星。

对于数组中的每一个元素,其绝对值表示小行星的大小,正负表示小行星的移动方向(正表示向右移动,负表示向左移动)。每一颗小行星以相同的速度移动。

找出碰撞后剩下的所有小行星。碰撞规则:两个小行星相互碰撞,较小的小行星会爆炸。如果两颗小行星大小相同,则两颗小行星都会爆炸。两颗移动方向相同的小行星,永远不会发生碰撞。

示例 1:
输入:asteroids = [5,10,-5]
输出:[5,10]
解释:10 和 -5 碰撞后只剩下 10 。 5 和 10 永远不会发生碰撞。

示例 2:
输入:asteroids = [8,-8]
输出:[]
解释:8 和 -8 碰撞后,两者都发生爆炸。

示例 3:
输入:asteroids = [10,2,-5]
输出:[10]
解释:2 和 -5 发生碰撞后剩下 -5 。10 和 -5 发生碰撞后剩下 10 。

在这里插入图片描述

模拟栈

class Solution {
public:vector<int> asteroidCollision(vector<int>& asteroids) {vector<int> st;for(int a : asteroids){bool alive = true;while(alive && a < 0 && !st.empty() && st.back() > 0){alive = -a > st.back();if(st.back() <= -a){st.pop_back();}}if(alive){st.push_back(a);}}return st;}
};

时间复杂度:O(n),其中 n 为数组 asteroids 的大小。出入栈次数均不超过 n 次。
空间复杂度:O(1)。返回值不计入空间复杂度。

这道题的思路就是,我们遍历数组asteroids,将里面的所有元素一一与栈顶元素比对,如果遍历的元素a是负数,那么就会不断和栈中的元素进行比对,只要栈顶元素是正数且绝对值小于a,则会爆炸,也就是弹出栈,直到a遇到比自己大的反方向的行星自己爆炸或者栈顶的行星方向与自己相同,则停止while循环(因为当遇到和自己同方向的行星,说明栈中现有的行星没有反方向的),这时候如果行星没有发生爆炸,还存在,那么就将它推入栈中。

http://www.hengruixuexiao.com/news/33902.html

相关文章:

  • 郑州有什么好玩的惠州抖音seo策划
  • wordpress自定义新页面链接杭州网站优化服务
  • b2c网站功能杭州做搜索引擎网站的公司
  • 做网站app产品网络推广
  • wordpress 判断用户重庆网页优化seo公司
  • 图片做视频在线观看网站cilimao磁力猫
  • 手机网站 微信网站 区别nba最新排名公布
  • 重庆建网站公司网站联盟广告
  • 企业营销活动有哪些百度seo点击工具
  • 济宁网站定制公司巩义网络推广
  • 网站框架代码海外网络推广平台
  • 网站建设法律可行性杭州seook优屏网络
  • 电器网站模板怎样做平台推广
  • 建立com网站网络营销广告策划
  • asp调用其他网站免费推广有哪些
  • 企业站系统关键词seo资源
  • 南城区网站仿做seo推广方法有哪些
  • 武汉做网站比较好的公司代写文章哪里找写手
  • 抚顺做网站如何让关键词排名靠前
  • 商城网站建设公司招聘营销策划推广
  • 网站群 意义个人接外包项目平台
  • 什么叫搭建平台查询seo
  • wordpress 自定义文章类型珠海百度搜索排名优化
  • 可信网站多少钱今日西安头条最新消息
  • 做天猫网站设计难吗营销推广的工具有哪些
  • 怎么做网站的301百度实时热点排行榜
  • 做购物网站小图标关键词推广和定向推广
  • 郑州做网站制作的公司站长之家网站模板
  • 多用户自助建站系统企业网站优化
  • 大连城乡住房建设厅网站免费的外贸网站推广方法