字符串-字符串反转(双指针)
题意:
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 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;
}}
}
字符串-字符串反转(双指针)相关推荐
- 代码随想录算法训练营第八天|● 344.反转字符串● 541. 反转字符串II● 剑指Offer 05.替换空格● 151.翻转字符串里的单词● 剑指Offer58-II.左旋转字符
一.344.反转字符串 力扣 思路:很简单的一个for循环双指针,left和right交换. class Solution {public void reverseString(char[] s) { ...
- 字符串的反转以及巧用反转 ------关于反转,看这一篇就足够了
目录 一.本文介绍 二.反转字符串 1.题目描述 2.问题分析 3.代码实现 三.反转字符串 II 1.题目描述 2.问题分析 3.代码实现 三.反转字符串中的单词 I 1.题目描述 2.问题分析 3 ...
- 代码随想录Day09:28. 实现 strStr()、459.重复的子字符串、字符串总结 、双指针回顾
目录 Day09:28. 实现 strStr().459.重复的子字符串.字符串总结 .双指针回顾 28. 实现 strStr() (一刷只看了思想) 459.重复的子字符串 (本题一刷跳过了) 字符 ...
- 【必备算法】字符串(反转问题):LeetCode题 344. 反转字符串,541. 反转字符串 II,917. 仅仅反转字母
写在前面,反转数组的思路很简单,就是借助双指针不断将首尾相应位置的字符交换.Java模板如下: public void reverseArray(char[] arr) {int i = 0, j = ...
- 代码随想录算法训练营第八天|344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串
一.344.反转字符串 题目:编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 char[] 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的 ...
- Python中列表和字符串的反转
要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...
- 手写Python中列表和字符串的反转
要求: 原列表:[13, 30, 42, 85, 9, 45] 反转后的列表:[45, 9, 85, 42, 30, 13] 原字符串:hello 反转后的字符串:olleh Python现成的反转功 ...
- 【视频】vue插值表达式之字符串的反转
P19vue插值表达式之字符串的反转 https://www.bilibili.com/video/av91679349?p=19
- String案例 练习: 将一个字符串进行反转
package Day12; /* 练习: 将一个字符串进行反转 "abcdefg" 思路:1.曾经学习过数组的元素反转2.将字符串变成数组 对其进行反转3.将反转后的数组变成字符 ...
- string的反转输出以及char型字符串的反转输出
string str; //string型变量str char str1[]; //char型变量str string的反转输出: reverse(str.begin(),str.end()) cha ...
最新文章
- 模仿nginx修改进程名
- kvm-桥接模式(二)
- 牛批了,1行python代码就可实现炫酷可视化
- 自己动手实现的 Spring IOC 和 AOP - 下篇
- 示例 Demo 工程和 API 参考链接
- 文科思维Java_开源之Processing:这好玩的编程语言是为文科生艺术家准备的
- python模块讲解_python模块详解
- Python《回车桌面图片》
- SAP License:SAP采购信息系统
- 通过char与varchar的区别,学习可变长的字符类型
- vue2.0实现银行卡类型种类的选择
- 人工智能—产生式系统(专家系统)
- KETTLE教程-初探
- emoji.php,简单的处理emoji的PHP类库
- 1、Linux软件源配置操作
- python3+urllib撸新浪滚动新闻爬虫
- 读《把时间当作朋友:运用心智获得解放》
- 简单介绍线上点餐APP开发用途
- 基于SpringBoot的共享汽车管理系统
- php各种编码集详解和在什么情况下进行使用