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

自己建网站免费最近七天的新闻重点

自己建网站免费,最近七天的新闻重点,线上拓客渠道有哪些,深圳出台多个利好政策目录 题目: 示例: 分析: 代码运行结果: 题目: 示例: 分析: 题目给我们一个字符串,然后字符串中包含星号*,要求每个星号消除一个从星号左边起最近的一个字符&#xf…

目录

题目:

示例:

分析:

代码+运行结果:


题目:

示例:

分析:

题目给我们一个字符串,然后字符串中包含星号*,要求每个星号消除一个从星号左边起最近的一个字符,返回消除后的字符串。

首先每个星号*要消除从左开始的第一个字符,并且自身也被移除,这不免让我们想到先进后出,后进先出这个概念,因此我们自然而然就可以想到使用栈来解决这道题。

一开始我使用的是C++内置的stack(栈)这个容器后,由于我们返回的结果还是需要按照正常的顺序排列的字符串,而一个个将字符从栈中取出则是相反的顺序,如果要正常排列,还需要加一道工序,因此我们可以使用vector来模拟栈,并且取结果的时候也可以从左到右自然地取出。

我们先遍历一边原字符串,然后在遇到非星号的字符则直接入栈,遇到星号时不仅不入栈,还需要将栈顶元素弹出表示星号消除掉了一个从左开始第一个字符。(由于题目保证了测试用例可以保证一个星号消除一个字符,因此我们不需要判断栈是否为空这种问题,不过代码中有习惯性做个判断,实际上是可以删掉的)

代码+运行结果:

class Solution {
public:string removeStars(string s) {//使用C++自带的stack栈的话,由于栈的先进后出的特殊性,会导致需要单独处理结果的顺序//使用vector模拟stackvector<char>stack;for(char S:s){if(stack.empty()||S!='*') stack.push_back(S);   //如果栈为空或者元素不为*则入栈//由于题目保证合法操作(即一个*会消除一个字符)因此实际上else if可以改成else,并且上面的if也不需要判断栈是否不为空else if(!stack.empty()) stack.pop_back();   //如果为*,不仅不入栈,并且要弹出一个最后进入的元素}string res="";for(const char &S:stack){res+=S;}return res;}
};

http://www.dinnco.com/news/25334.html

相关文章:

  • 建设网站是否等于开展网络营销自动seo优化
  • 美食烹饪网站策划书新网站推广方法
  • 艾融软件是外包公司么seo是怎么优化的
  • 免费搭建网站平台百度网站的优化方案
  • 用php做美食网站有哪些百度一下官网网址
  • 南宁网站建设超薄网络大数据分析培训机构
  • 价格优化网站建设济南竞价托管公司
  • 学做美食视频在哪个网站如何建立一个网站平台
  • 定制开发电商网站建设哪家好网站怎么收录到百度
  • 杭州h5建站seo查询 站长工具
  • 高校网站建设汇报民宿平台搜索量上涨
  • 班级网站源代码怎么做seo
  • 海尔公司的网站建设百度秒收录神器
  • 邯郸网站设计费用seo推广工具
  • 给博彩网站做优化人民网舆情数据中心官网
  • 网站建设专业英文无代码系统搭建平台
  • Wordpress刷新CDN缓存专业全网优化
  • 2023中国互联网公司排行榜优化大师的作用
  • 网页设计实验报告操作步骤seo优化技巧
  • 做商城网站要什么证件店铺推广渠道有哪些方式
  • 网站推广软文范例seo销售代表招聘
  • 试玩做任务赚钱的网站如何在各种网站投放广告
  • 网站开发与设计实验报告总结班级优化大师官网下载
  • 做视频网站成本广州seo网站推广公司
  • 网站的交互性google官网登录入口
  • 定远县可以做网站的地方免费推广的网站有哪些
  • 网站建设技术员电商详情页模板免费下载
  • 网站制作的核心要点是什么南京seo公司哪家
  • 洪宇建设集团公司网站seo页面优化的方法
  • 电子商务网站建设复习题企业管理培训视频免费