leeCode344_反转字符串
字符串 反转
2023-09-11 14:18:54 时间
一、题目内容
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 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"]
二、题目分析
这是一道相当简单的经典题目,直接上题解:使用双指针进行反转字符串。
假设输入字符串为[“h”,“e”,“l”,“l”,“0”]
- 定义left和right分别指向首元素和尾元素
- 当left < right ,进行交换。
- 交换完毕,left++,right–
- 直至left == right
具体过程如下图所示:
三、代码实现
func reverseString(s []byte) {
left := 0
right := len(s) - 1
for left < right {
s[left], s[right] = s[right], s[left]
left++
right--
}
}
相关文章
- 写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。
- 倍福TwinCAT(贝福Beckhoff)基础教程2.2 TwinCAT常见类型使用和转换_字符串
- mysql:查询以逗号相隔的字符串
- Java实现 LeetCode 345 反转字符串中的元音字母
- Java实现 LeetCode 344 反转字符串
- Python字符串逐字符或逐词反转方法
- Python字符串逐字符或逐词反转方法
- 将字符串中的字符反转输出
- [C/C++] String Reverse 字符串 反转
- 344. 反转字符串
- 反转字符串
- C++ 递归和非递归实现字符串反转 char *reverse(char *s)
- Leetcode0806. 写字符串需要的行数(simple)
- Java实现字符串反转的四种方式代码示例
- C# 字符串的不可变性
- 字符串匹配的Boyer-Moore算法
- 去除字符串中的所有空格
- 一天学完spark的Scala基础语法教程六、字符串(idea版本)
- android 算法题(顺时针打印矩阵,数字字符串反转输出 ,阶乘)
- 反转字符串 II-C语言力扣时间空间开销最忧算法
- Leetcode 541. 反转字符串 II(可以,已解决)
- NC100 把字符串转换成整数(atoi)
- leetcode 344. 反转字符串 js实现
- 字符串反转
- Android JNI创建字符串数组和jni释放资源