题目

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
示例 1:
输入:s = [“h”,“e”,“l”,“l”,“o”]
输出:[“o”,“l”,“l”,“e”,“h”]
示例 2:
输入:s = [“H”,“a”,“n”,“n”,“a”,“h”]
输出:[“h”,“a”,“n”,“n”,“a”,“H”]
提示:
1 <= s.length <= 10^5
s[i] 都是 ASCII 码表中的可打印字符
来源:力扣(LeetCode)

解题思路

  这个题和判断回文有些相似,不过在这里题目做出了限制,我们需要原地对列表进行操作。基本思路就是设置一个中间变量temp让列表的头部元素和尾部元素逐个交换即可。

class Solution:def reverseString(self, s: List[str]) -> None:"""Do not return anything, modify s in-place instead."""for i in range(len(s)//2):temp=s[i]s[i]=s[len(s)-i-1]s[len(s)-i-1]=temp

LeetCode简单题之反转字符串相关推荐

  1. LeetCode简单题之判断字符串的两半是否相似

    题目 给你一个偶数长度的字符串 s .将其拆分成长度相同的两半,前一半为 a ,后一半为 b . 两个字符串 相似 的前提是它们都含有相同数目的元音('a','e','i','o','u','A',' ...

  2. LeetCode简单题之旋转字符串

    题目 给定两个字符串, A 和 B. A 的旋转操作就是将 A 最左边的字符移动到最右边. 例如, 若 A = 'abcde',在移动一次之后结果就是'bcdea' .如果在若干次旋转操作之后,A 能 ...

  3. LeetCode简单题之检查字符串是否为数组前缀

    题目 给你一个字符串 s 和一个字符串数组 words ,请你判断 s 是否为 words 的 前缀字符串 . 字符串 s 要成为 words 的 前缀字符串 ,需要满足:s 可以由 words 中的 ...

  4. LeetCode简单题之反转单词前缀

    题目 给你一个下标从 0 开始的字符串 word 和一个字符 ch .找出 ch 第一次出现的下标 i ,反转 word 中从下标 0 开始.直到下标 i 结束(含下标 i )的那段字符.如果 wor ...

  5. LeetCode简单题之整理字符串

    题目 给你一个由大小写英文字母组成的字符串 s . 一个整理好的字符串中,两个相邻字符 s[i] 和 s[i+1],其中 0<= i <= s.length-2 ,要满足如下条件: 若 s ...

  6. LeetCode简单题之同构字符串

    题目 给定两个字符串 s 和 t ,判断它们是否是同构的. 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的. 每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序. ...

  7. 牛客题霸 [反转字符串] C++题解/答案

    牛客题霸 [反转字符串] C++题解/答案 题目描述 写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串.(字符串长度不超过1000) 题解: 有reverse现成的翻转函数,直接套进去就可 ...

  8. 【必备算法】字符串(反转问题):LeetCode题 344. 反转字符串,541. 反转字符串 II,917. 仅仅反转字母

    写在前面,反转数组的思路很简单,就是借助双指针不断将首尾相应位置的字符交换.Java模板如下: public void reverseArray(char[] arr) {int i = 0, j = ...

  9. LeetCode简单题之比较含退格的字符串

    题目 给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true .# 代表退格字符. 注意:如果对空文本输入退格字符,文本继续为空. 示例 1: 输入:s = ...

最新文章

  1. NameError: name ‘sklearn‘ is not defined的解决方法:
  2. Sql sever 分组排序
  3. mac安装和卸载mysql_小白自学MySQL笔记(一):Mac环境的安装和启动
  4. Swing学习1——总体概述
  5. GARFIELD@11-11-2004
  6. 运维的核心竞争力是什么
  7. 新浪微博2020Java校招笔试题
  8. smartplant license manager issue
  9. 计算机机房需求调查表,机房建设需求调查表机房建设需求调查表.doc
  10. 教科书级别的软件推荐
  11. android studio接口在哪设置,Android定位SDK
  12. linux查看其他用户计划任务,Linux计划任务(crond、atd)
  13. 6319. 【省选组】【USACO 2019 February Platinum】Problem 3. Mowing Mischief
  14. 2.4G无线模块(NRF24L01)学习(2)——单片机互相控制LED灯
  15. LINUX下更新flash
  16. python七段数码管10秒倒计时_用7段数码管显示9秒倒计时.doc
  17. 360搜索“触链”聚焦版权领域,“图刻”是噱头还是不忘安全初心?
  18. 初学者的3d建模软件。是什么软件?
  19. 【数论】斐波那契数列求和公式
  20. 【数据库】【课程设计】商品销售信息管理系统设计

热门文章

  1. 2022-2028年中国急救中心行业发展战略规划及未来前景展望报告
  2. 2022-2028年中国DTRO膜行业市场全景评估及产业前景规划报告
  3. 2017 年总结及 2018 年计划
  4. Redis 使用技巧
  5. LeetCode简单题之数组序号转换
  6. SpringBoot整合MyBatis详细教程~
  7. Turing渲染着色器网格技术分析
  8. Nucleus SE RTOS初始化和启动
  9. Invocation of destroy method 'close' failed on bean with name 'sqlSession'
  10. 2022-2028年中国工业4.0深度调研及投资前景预测报告(全卷)