反转字符串(LeetCode)

题目

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 的形式给出。

不要给另外的数组分配额外的空间,你必须**原地修改输入数组** 、使用 的额外空间解决这一问题。

解题

python 复制代码
def reverse_string(s):
    left = 0
    right = len(s) - 1

    while left < right:
        # 交换左右指针所指的元素
        s[left], s[right] = s[right], s[left]
        # 移动指针
        left += 1
        right -= 1


# 测试例子
s = ['h', 'e', 'l', 'l', 'o']
reverse_string(s)
print("反转后的数组:", s)

反转后的数组: ['o', 'l', 'l', 'e', 'h']

相关推荐
样例过了就是过了3 小时前
LeetCode热题100 路径总和 III
数据结构·c++·算法·leetcode·链表
smileNicky3 小时前
Spring AI系列之对话记忆与工具调用指南
人工智能·python·spring
lxh01133 小时前
函数防抖题解
前端·javascript·算法
再难也得平3 小时前
力扣41. 缺失的第一个正数(Java解法)
数据结构·算法·leetcode
颜酱3 小时前
环检测与拓扑排序:BFS/DFS双实现
javascript·后端·算法
飞Link3 小时前
深度解析 TS2Vec:时序表示学习中的层次化建模(Hierarchical Contrastive Learning)
开发语言·python·学习·数据挖掘
IronMurphy3 小时前
【算法二十】 114. 寻找两个正序数组的中位数 153. 寻找旋转排序数组中的最小值
java·算法·leetcode
实心儿儿3 小时前
算法2:链表的中间结点
数据结构·算法·链表
代码探秘者3 小时前
【Java集合】ArrayList :底层原理、数组互转与扩容计算
java·开发语言·jvm·数据库·后端·python·算法
颜酱3 小时前
理解并查集Union-Find:从原理到练习
javascript·后端·算法