前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【leetcode刷题】T81-反转字符串 II

【leetcode刷题】T81-反转字符串 II

作者头像
木又AI帮
修改2019-07-18 10:21:16
3330
修改2019-07-18 10:21:16
举报
文章被收录于专栏:木又AI帮

【题目】

给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转。如果剩余少于 k 个字符,则将剩余的所有全部反转。如果有小于 2k 但大于或等于 k 个字符,则反转前 k 个字符,并将剩余的字符保持原样。

示例:

代码语言:javascript
复制
输入: s = "abcdefg", k = 
输出: "bacdfeg"

要求:

  1. 该字符串只包含小写的英文字母。
  2. 给定字符串的长度和 k 在[1, 10000]范围内。

贡献者

【思路】

暴力破解:按照要求,依次对字符串进行翻转,即可得到结果。

【代码】

python版本

代码语言:javascript
复制
class Solution(object):
    def reverseStr(self, s, k):
        """
        :type s: str
        :type k: int
        :rtype: str
        """
        i =  * k
        while i < len(s):
            s = s[:i-2*k] + s[i-2*k:i-k][::-1] + s[i-k:]
            # print(i, s)
            i +=  * k

        # 最后一部分
        i -=  * k
        if len(s) - i < k:
            return s[:i] + s[i:][::-1]
        if k <= len(s) - i <= *k:
            return s[:i] + s[i:i+k][::-1] + s[i+k:]
        return s
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 木又AI帮 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档