代码随想录算法训练营第八天 | 344. 反转字符串、541. 反转字符串 II、54. 替换数字(第八期模拟笔试)

今天主要的内容是字符串的基本操作,字符串在各中语言中的实现方式会影响一些基本的操作(pyhton里面基本需要新开一个空间去做存储)

344. 反转字符串

leetcode 344. 反转字符串
代码随想录

class Solution:
    def reverseString(self, s: List[str]) -> None:
        """
        Do not return anything, modify s in-place instead.
        """
        left, right = 0, len(s) - 1
        while left < right:
            temp = s[left]
            s[left] = s[right]
            s[right] = temp
            left += 1
            right -= 1

541. 反转字符串 II

leetcode 541. 反转字符串 II
代码随想录

class Solution:
    def reverseStr(self, s: str, k: int) -> str:
        end = 0
        while end < len(s):
            formerk = end + k
            s = s[:end] + s[end:formerk][::-1] + s[formerk:]
            end = end + 2*k
        return s
        # def reverse(s):
        #     left, right = 0, len(s)-1
        #     while left < right:
        #         s[left], s[right] = s[right], s[left]
        #         left += 1
        #         right -= 1
        #     return s

        # end = 0
        # res = list(s)
        # for cur in range(0,len(s), 2*k):
        #     res[cur:cur+k] = reverse(res[cur:cur+k])
        # return "".join(res)
            

54. 替换数字(第八期模拟笔试)

卡码网 54. 替换数字(第八期模拟笔试)
代码随想录

s = input()

s = list(s)

res = ""
for i in range(len(s)-1, -1, -1):
    char = s[i]
    if ord('0') <= ord(char) <= ord('9'):
        res = "number" + res
    else:
        res = char + res
# for char in s:
#     if ord('0') <= ord(char) <= ord('9'):
#         res += "number"
#     else:
#         res += char
print(res)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值