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

邯郸市做网站的公司西安百度seo排名

邯郸市做网站的公司,西安百度seo排名,福建省人民政府办公厅官网,武汉近期重大新闻目录 (一)反转字符串Ⅱ的C实现 写法一(s.begin()遍历字符) (二)复杂度分析 时间复杂度 空间复杂度 (三)总结 【题目链接】541. 反转字符串Ⅱ - 力扣&am…

目录

(一)反转字符串Ⅱ的C++实现

写法一(s.begin()遍历字符)

(二)复杂度分析

时间复杂度

空间复杂度

(三)总结


【题目链接】541. 反转字符串Ⅱ - 力扣(LeetCode)

给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。

  • 如果剩余字符少于 k 个,则将剩余字符全部反转。

  • 如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。

示例 1:

输入:s = "abcdefg", k = 2
输出:"bacdfeg"

示例 2:

输入:s = "abcd", k = 2
输出:"bacd"

提示:

  • 1 <= s.length <= 104

  • s 仅由小写英文组成

  • 1 <= k <= 104

(一)反转字符串Ⅱ的C++实现

写法一(s.begin()遍历字符)

解题思路:

        本题的反转与上一题不同,【题目链接】344.反转字符串 - 力扣(LeetCode)Leetcode刷题 由浅入深之字符串——344. 反转字符串-CSDN博客这一题是将整个字符串逆序,本题是在字符串内部2k以内逆序。

        定义一个指针temp指向子字符串的第一个字符,为便于循环和条件控制,从剩余字符串的角度考虑,每次循环temp跳2k,直到超出字符串长度范围。根据题意,

  • 如果剩余字符少于 k 个,则将剩余字符全部反转。

  • 如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。

        使用s.begin()表示字符串的第一个字符,通过加减整数代表字符串的第几个字符。使用reverse()函数对子字符串进行反转根据题目要求写出不同条件的处理办法即可。

class Solution {
public:string reverseStr(string s, int k) {int a = s.size();int temp = 0;while(temp < a){if(a-temp < k){reverse(s.begin()+temp, s.begin()+a);}else if(a-temp >= k && a-temp < 2*k){reverse(s.begin()+temp, s.begin()+temp+k);}else{reverse(s.begin()+temp, s.begin()+temp+k);}temp += 2*k;}return s; }
};

        思路理清楚之后,会发现可以将一些逻辑相同的部分合并起来,更简洁的代码如下,运行结果一致。

class Solution {
public:string reverseStr(string s, int k) {int a = s.size();int temp = 0;while(temp < a){/*if(a-temp < k)reverse(s.begin()+temp, s.begin()+a);else if(a-temp >= k && a-temp < 2*k)reverse(s.begin()+temp, s.begin()+temp+k);elsereverse(s.begin()+temp, s.begin()+temp+k);*/reverse(s.begin()+temp, s.begin()+min(temp+k, a));temp += 2*k;}return s; }
};

(二)复杂度分析

时间复杂度

O(n)

空间复杂度

O(1)

(三)总结

(1)s.begin()表示字符串的第一个字符,后面加减整数可以遍历字符串中的字符。

(2)reverse()函数可以对子字符串进行反转。

学习中,诚挚希望有心者指正和交流,经验或者方法都可。

http://www.dtcms.com/wzjs/136805.html

相关文章:

  • 做课件赚钱网站在哪里seo综合查询是什么
  • 四川网站建设 湖南岚鸿直通车推广计划方案
  • 分类网站上怎么做锚文本百度联盟广告收益
  • 高埗网站建设公司丈哥seo博客工具
  • 宣武郑州阳网站建设seo外包上海
  • 寻找做网站seo网站营销公司哪家好
  • 梧州网站优化如何做网站关键词优化
  • 网页设计学生作业步骤seo短期培训班
  • 微信小程序游戏修改器seo外链发布软件
  • 专业的移动网站建设公司排名关键词优化工具
  • 一个域名怎么用来做多个网站地推团队联系方式
  • 高唐网站建设优化师培训机构
  • 网站建设福州最好电商seo搜索引擎优化
  • 青海建设厅网站特种作业网站查询工具
  • 做百度网站找谁军事新闻头条
  • 建站产品手机优化大师下载2022
  • 个人建站项目产品营销推广
  • 官方app网站手机优化
  • 网站建设网站维护的具体内容是什么链接提交入口
  • 郑州政府网站搭建seo的含义
  • 建立网站服务器网络营销和网络销售的关系
  • 如何制作微网站网络广告联盟
  • 盗版视频网站怎么做的软文推广系统
  • 移动网站开发服务百度指数搜索热度大学
  • 宿迁专业网站三合一建设免费b站在线观看人数在哪儿
  • 怎么做网站扫码支付自助优化排名工具
  • 动态网站做登录界面网站策划是什么
  • 网站备案到哪里下载各城市首轮感染高峰期预测
  • 北京网站公司建设客源引流推广
  • 企业怎么做网站网站流量查询平台