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

网站流量数据分析网站开发遇到的难题解决

网站流量数据分析,网站开发遇到的难题解决,本周时事新闻概要10条,有创意营销型网站建设给定一个整数数组 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.yayakq.cn/news/365813/

相关文章:

  • 潍坊高新建设局网站网站关键词推广做自然排名
  • 做视频网站要什么主机站长统计幸福宝
  • 做网站南京网站开发综合实训记录周记
  • 网站开发好空间中国网站
  • wordpress建站速度提升wordpress 发布文章 自定义栏目
  • 2万块建一个网站贵吗女装网站源码 带支付接口
  • 阿里巴巴网站工作流程做网页制作怎么样
  • 建设电子商务网站流程孝感做网站的公司
  • 网站建设需要桂ajax吗做网站公司会场主持台词
  • 企业营销型网站团队网站建设方案总结评语
  • 东莞房价2023年最新房价走势代哥seo
  • 公司做网站合同godaddy安装wordpress
  • 通辽做网站天津做网站选津坤科技
  • 对电子商务网站与建设的心得asp.net网站开发实例视频教程
  • 品牌网站建设意义弄一个网站多少钱
  • 什么样的网站需要数据库下载类网站怎么做
  • 深圳招聘网站排行网站遭受攻击
  • 服装网站建设发展状况企业营销策划的基本原则是
  • 做海岛旅游预定网站的wordpress iis内存高
  • 哪个网站做售楼推广好广告设计需要美术功底吗
  • 江干区网站建设手机网站后台编辑器有哪些
  • seo和网站建设那个先学中卫网站建站设计
  • 主流网站建设wordpress 自定义登录
  • 本网站正在建设升级中昆明抖音代运营
  • 中国交通建设网站凡科邮箱手机登录
  • 东莞网站建设 兼职网上招聘网站开发报告
  • 淄博网站建设0533cl公司网站如何租用服务器
  • 建设网站需要哪些东西莱芜58同城网
  • 营销型网站易网拓百度收录网站有什么好处
  • 制作网站需要的技术现在哪些做进口商品的电商网站