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

微网站建设包含河南省建筑一体化平台管理系统

微网站建设包含,河南省建筑一体化平台管理系统,猪八戒网站做推广怎么样,企业管理系统项目简介怎么写题目: 给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,…

题目:

给定一个字符串 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


思路:

其实在遍历字符串的过程中,只要让 i += (2 * k),i 每次移动 2 * k 就可以了,然后判断是否需要有反转的区间。

因为要找的也就是每2 * k 区间的起点,这样写,程序会高效很多。

所以当需要固定规律一段一段去处理字符串的时候,要想想在在for循环的表达式上做做文章。
那么这里具体反转的逻辑我们要不要使用库函数呢,其实用不用都可以,使用reverse来实现反转也没毛病,毕竟不是解题关键部分。


代码:

class Solution {
public:string reverseStr(string s, int k) {for(int i = 0; i < s.length(); i += (2 * k)) {// 1.每隔 2k 个字符的前 k 个字符进行反转// 2.剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符if(i + k <= s.length()) {reverse(s.begin() + i, s.begin() + i + k);}else{// 3.剩余字符少于 k 个,则将剩余字符全部反转reverse(s.begin() + i, s.end());}}return s;}
};

总结:

时间复杂度: O(n)
空间复杂度: O(1)


参考:

代码随想录

http://www.yayakq.cn/news/789121/

相关文章:

  • 完整的网站开发流程视频网站建设技术方案书
  • 建设网站可以做什么运河网站制作
  • 目前流行的app网站开发模式wordpress 餐饮主题
  • 小型电子商务网站规划网络运维工作内容及过程
  • 贵阳专业做网站公司有哪些附近推广用哪些软件
  • 网站突然不收录了莱芜网站seo
  • 网站建设报价单wordpress自动判断当前分类并获取tag标签
  • 不备案怎么做淘宝客网站丹东市网站开发公司
  • 陕西专业网站开发多少钱最好的手机资源网站
  • 做不锈钢的网站软文写作营销
  • 网站开发过程的分工wordpress双栏主题
  • 关于电视剧的网站设计网页用数据库做学校网站论文
  • 网站建设简单模板如何删除图标wordpress
  • 给宝宝做衣服网站wordpress 文章商品
  • 做灯饰的企业都会在哪些网站东凤镇做网站公司
  • 安徽制作网站专业公司网络营销整合推广
  • 狼窝网站更新升级通知seo怎么做网站排名
  • 常州建设网站公司做微信网站的公司
  • 港口建设征收 申报网站深圳网站设计公司wx成都柚米科技15
  • 长春建站单位怎样做网站
  • 网站图片自动下载成都网站建设招聘
  • 加快政务网站建设宣传软文是什么意思
  • 网站备案账户名如何查询南京江北建设有限公司
  • 网站设计与制作是什么专业诸城网站优化
  • 织梦 调用网站地址980网站
  • 免费百度网站建设注册公司的步骤和流程
  • wordpress站点设置使用时间企业简介模板ppt免费
  • 做企业门户网站做微商有哪些网站可以免费宣传
  • 网站排名下降了怎么办广州市网络seo外包
  • 网站服务器怎么做安全防护跨国网站怎么做