leedcode-反转字符串

自己写的,这么简单?

from typing import List

class Solution:
    def reverseString(self, s: List[str]) -> None:
       
        n = len(s)  # 获取字符串列表的长度
        
        # 使用双指针法来反转字符串
        # 初始化指针i指向字符串开头,指针j指向字符串结尾
        # 依次交换指针i和j指向的字符,直到i指向的位置超过j
        for i in range(n // 2):
            # 交换s[i]和s[n-1-i]处的字符
            s[i], s[n - 1 - i] = s[n - 1 - i], s[i]
        
        # 函数不返回任何值,因为直接修改了输入的列表s

 双指针:

from typing import List

class Solution:
    def reverseString(self, s: List[str]) -> None:
       
        left = 0  # 左指针,指向字符串的开头
        right = len(s) - 1  # 右指针,指向字符串的末尾
        
        # 使用双指针法来反转字符串
        # 初始化左指针指向字符串的开头,右指针指向字符串的末尾
        while left < right:
            # 交换左指针和右指针指向的字符
            s[left], s[right] = s[right], s[left]
            
            # 移动左指针向右移动一步
            left += 1
            
            # 移动右指针向左移动一步
            right -= 1
        
        # 函数不返回任何值,因为直接修改了输入的列表s

 

posted @ 2024-04-09 22:27  Junior_bond  阅读(11)  评论(0)    收藏  举报