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

织梦网站栏目修改教程友情链接平台哪个好

织梦网站栏目修改教程,友情链接平台哪个好,网络营销是什么工作职位,葆婴保健品3174、[简单] 清除数字 1、题目描述 给你一个字符串 s 。你的任务是重复以下操作删除 所有 数字字符: 删除 第一个数字字符 以及它左边 最近 的 非数字 字符。 请你返回删除所有数字字符以后剩下的字符串。 2、解题思路 遍历字符串: 我们需要逐个遍…

3174、[简单] 清除数字

1、题目描述

给你一个字符串 s 。你的任务是重复以下操作删除 所有 数字字符:

  • 删除 第一个数字字符 以及它左边 最近非数字 字符。

请你返回删除所有数字字符以后剩下的字符串。

2、解题思路

  1. 遍历字符串

    • 我们需要逐个遍历字符串中的每个字符,找到数字字符,并删除其左侧最近的非数字字符。
  2. 双指针法

    • 我们可以使用两个指针 left 和 right 来实现遍历和删除的过程:
      • right 用于遍历字符串 s
      • left 用于构造删除后的新字符串,逐步替换字符。
  3. 处理逻辑

    • 当我们遇到一个数字字符时,删除左侧最近的非数字字符,这可以通过将 left 指针左移一位实现。

    • 当遇到非数字字符时,将其放到新的位置上,并移动 left 指针。

  4. 最后清理字符串

    • 遍历结束后,使用 erase 函数删除字符串中多余的字符,最终得到所需结果。

3、代码实现

class Solution {
public:string clearDigits(string s) {int n = s.size(); // 获取字符串的长度// 定义两个指针, left 用于构造新字符串, right用于遍历原字符串int left = 0, right = 0;// 使用双指针法遍历字符串while (right < n) {// 如果当前字符是数字if (s[right] >= '0' && s[right] <= '9') {// 如果 left 不为 0,表示有可以删除的非数字字符if (left != 0) {// 删除数字左侧最近的非数字字符left--;}} else {// 如果当前字符是非数字字符,将其放到新位置上s[left++] = s[right];}right++; // 移动右指针}// 删除从 left 开始的多余字符s.erase(left);// 返回处理后的字符串return s;}
};

4、复杂度分析

  • 时间复杂度:O(n),其中 n 是字符串的长度。我们只遍历字符串一次。

  • 空间复杂度:O(1),只使用了常数级别的额外空间来存储指针。

5、总结

这个问题通过双指针法实现对字符串的遍历和处理,核心在于如何高效地删除数字字符及其左侧相邻的非数字字符。通过对指针的巧妙控制,我们能够在一次遍历中完成所有操作,并且不需要额外的空间复杂度。

http://www.zhongyajixie.com/news/23031.html

相关文章:

  • 有哪些做网站的网站公司seo是什么级别
  • 什么网站设计素材多免费网站推广2023
  • 哪些网站可以做seo店铺推广软文300字
  • 网站搭建h5是什么电商运营主要做什么
  • 长网址转短网址网站南昌seo快速排名
  • 重庆网站建站市场推广方案范文
  • 能自己做生物实验的网站网站按天扣费优化推广
  • 最好的网站建设团队seo常规优化
  • wordpress网站怎样网站服务器怎么搭建
  • 买奢侈品代工厂做的产品的网站名站长之家网站排行榜
  • 无锡网站建设网常用的关键词优化策略有哪些
  • 青岛建站的模板谷歌优化怎么做
  • 网上创业及网站建设实训总结汕头网站建设方案开发
  • 华为云服务器怎么做网站优化设计电子版
  • 谷歌独立站建站得多少钱企业的网络推广
  • 南宁优化网站网络服务百度客服电话4001056
  • 中国建设银行北京招聘信息网站谷歌引擎搜索入口
  • 青岛建网站的公司郑州seo课程
  • 肇庆市网站建设微信软文案例
  • wordpress 上传图片搜索引擎优化文献
  • 蓬莱市建设局网站考研培训
  • 昆山企业网站建设公司河南seo技术教程
  • 江都区城乡建设局门户网站网络营销策略论文
  • 做返利网站能赚钱么重庆seo小潘大神
  • 做图素材网站 千市场营销实际案例
  • 做照片书的网站市场营销四大基本策略
  • 专做淘宝的网站seo推广优化方案
  • 响应式网站示例网店代运营公司
  • 哪里创建免费个人网站免费seo快速排名系统
  • 私人做网站a培训课程总结