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

邯郸市做网站的公司培训学校招生营销方案

邯郸市做网站的公司,培训学校招生营销方案,wordpress模板移植,河北网站开发报价目录 (一)反转字符串Ⅱ的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/349670.html

相关文章:

  • 如何设置一个网站搜索seo引擎
  • 建筑工程总公司成都关键词优化服务
  • 论述网站开发建设的一般流程最近热点新闻事件2023
  • 那个做动态表情包的网站百度搜索如何去广告
  • 怎么打开文件做的网站网页设计制作网站html代码大全
  • wordpress牛站网络销售的好处和意义
  • 做b2b网站卖什么好视频外链平台
  • 做字幕网站有哪些怎么让百度收录我的网站
  • 中国有几家网络公司利于seo的建站系统有哪些
  • wordpress个人展示网站6企业网站设计与推广
  • 怎么查有做网站的公司有哪些网络营销成功案例有哪些2022
  • 祁东网站开发google play官网下载
  • 淮南建设公司网站网络营销中的seo是指
  • 域名注册网站的域名哪里来的网络热词2022
  • 网站建设公司需要申请icp吗武汉seo结算
  • 沈阳网势科技有限公司广西百度seo
  • 南京怎么做网站可以发广告的100个网站
  • 做爰片的网站百度人工客服电话是多少
  • 做水果的b2b网站今日热点新闻头条国内
  • 做金融资讯网站需要哪些牌照bt磁力搜索
  • 网站对一个关键词做排名怎么做it培训机构排名
  • 做词做曲网站东莞百度seo新网站快速排名
  • 专业网站开发哪家好百度竞价价格
  • 建设网站平台需要什么硬件配置大数据营销软件
  • 织梦系统 子网站百度广告投放平台叫什么
  • 网站虚拟主机查询2023年九月份新闻
  • 网站买流量是怎么做的企业高管培训课程有哪些
  • 做网站购买服务器吗在线培训平台哪家好
  • 类似b站的网站怎么做企业培训课程体系
  • 服装商城网站建设2022最新免费的推广引流软件