344. 反转字符串(双指针+字符串)

it2026-08-05  9

1.题目描述

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 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"]

2.java代码

package com.string.easy.LeetCode344; import java.awt.print.Printable; /** * @author GONG * @version 1.0 * @date 2020/10/22 11:31 */ public class Solution { /* *执行用时:1 ms, 在所有 Java 提交中击败了99.99%的用户 *内存消耗:45.1 MB, 在所有 Java 提交中击败了96.06%的用户 * */ public void reverseString(char[] s) { int begin = 0; char temp; int end = s.length - 1; while (begin < end) { temp = s[begin]; s[begin] = s[end]; s[end] = temp; begin++; end--; } } public static void main(String[] args) { Solution solution = new Solution(); char[] input = {'h', 'e', 'l', 'l', 'o'}; System.out.println("输入:" + String.valueOf(input)); solution.reverseString(input); System.out.println("输出:" + String.valueOf(input)); } }

敲代码的乔帮主 认证博客专家 数据分析 大数据工程师 java软件开发 走在梦想的大道上,跌跌撞撞,时而悲伤,时而难过失落,是什么又让我扬起头继续向前呢?是心中的那一朵彼岸之花,牵使着你我之间的约定,成为我心中那一股永不可灭的骨气,终究是信仰。
最新回复(0)