题意:
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

示例 1:
输入:[“h”,“e”,“l”,“l”,“o”]
输出:[“o”,“l”,“l”,“e”,“h”]
示例 2:
输入:[“H”,“a”,“n”,“n”,“a”,“h”]
输出:[“h”,“a”,“n”,“n”,“a”,“H”]

思路:
通过首尾交换来让字符数组元素反转
1.定义两个指针,指向字符数组首尾
int left = 0;int right = n - 1; (注意在for循环中的写法,否则出错)
2.元素交换(惯用代码)

class Solution {public void reverseString(char[] s) {int n = s.length;for(int left = 0, right = n - 1; left < right; left++,right--){char temp = s[left];s[left] = s[right];s[right] = temp;
}}
}

字符串-字符串反转(双指针)相关推荐

  1. 代码随想录算法训练营第八天|● 344.反转字符串● 541. 反转字符串II● 剑指Offer 05.替换空格● 151.翻转字符串里的单词● 剑指Offer58-II.左旋转字符

    一.344.反转字符串 力扣 思路:很简单的一个for循环双指针,left和right交换. class Solution {public void reverseString(char[] s) { ...

  2. 字符串的反转以及巧用反转 ------关于反转,看这一篇就足够了

    目录 一.本文介绍 二.反转字符串 1.题目描述 2.问题分析 3.代码实现 三.反转字符串 II 1.题目描述 2.问题分析 3.代码实现 三.反转字符串中的单词 I 1.题目描述 2.问题分析 3 ...

  3. 代码随想录Day09:28. 实现 strStr()、459.重复的子字符串、字符串总结 、双指针回顾

    目录 Day09:28. 实现 strStr().459.重复的子字符串.字符串总结 .双指针回顾 28. 实现 strStr() (一刷只看了思想) 459.重复的子字符串 (本题一刷跳过了) 字符 ...

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

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

  5. 代码随想录算法训练营第八天|344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串

    一.344.反转字符串 题目:编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 char[] 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的 ...

  6. Python中列表和字符串的反转

    要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...

  7. 手写Python中列表和字符串的反转

    要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...

  8. 【视频】vue插值表达式之字符串的反转

    P19vue插值表达式之字符串的反转 https://www.bilibili.com/video/av91679349?p=19

  9. String案例 练习: 将一个字符串进行反转

    package Day12; /* 练习: 将一个字符串进行反转 "abcdefg" 思路:1.曾经学习过数组的元素反转2.将字符串变成数组 对其进行反转3.将反转后的数组变成字符 ...

  10. string的反转输出以及char型字符串的反转输出

    string str; //string型变量str char str1[]; //char型变量str string的反转输出: reverse(str.begin(),str.end()) cha ...

最新文章

  1. 模仿nginx修改进程名
  2. kvm-桥接模式(二)
  3. 牛批了,1行python代码就可实现炫酷可视化
  4. 自己动手实现的 Spring IOC 和 AOP - 下篇
  5. 示例 Demo 工程和 API 参考链接
  6. 文科思维Java_开源之Processing:这好玩的编程语言是为文科生艺术家准备的
  7. python模块讲解_python模块详解
  8. Python《回车桌面图片》
  9. SAP License:SAP采购信息系统
  10. 通过char与varchar的区别,学习可变长的字符类型
  11. vue2.0实现银行卡类型种类的选择
  12. 人工智能—产生式系统(专家系统)
  13. KETTLE教程-初探
  14. emoji.php,简单的处理emoji的PHP类库
  15. 1、Linux软件源配置操作
  16. python3+urllib撸新浪滚动新闻爬虫
  17. 读《把时间当作朋友:运用心智获得解放》
  18. 简单介绍线上点餐APP开发用途
  19. 基于SpringBoot的共享汽车管理系统
  20. php各种编码集详解和在什么情况下进行使用

热门文章

  1. 再译《A *路径搜索入门》之一
  2. Java程序员【资源大全】
  3. 《世界上最伟大的50种思维方法》总结
  4. Leangoo研发管理软件甘特图6.0.2 版发布
  5. 阿里P7背调红灯:被前前公司说坏话,修改领导名被查!
  6. 基于 Prometheus、InfluxDB 与 Grafana 打造监控平台
  7. 快手二面:Java 里的 for (;;) 与 while (true),哪个更快?
  8. 图文详解 23 种设计模式
  9. CPU 核数与线程数有什么关系?
  10. 如何打造一个经常宕机的业务系统?