力扣java题 反转字符串---双指针

    科技2026-03-29  13

    java题 反转字符串

    题目: 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-string思路:反转字符串就是把字符串首字符和尾字符换位置,第二个字符和倒数第二个字符换位置,以此类推。所以可以定义双指针,一个指向首字符,另一个指向尾字符,交换位置后,各自移动到下一个字符,直到两个指针相遇。

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

    来源:力扣(LeetCode)

    链接:https://leetcode-cn.com/problems/reverse-string

    思路:反转字符串就是把字符串首字符和尾字符换位置,第二个字符和倒数第二个字符换位置,以此类推。所以可以定义双指针,一个指向首字符,另一个指向尾字符,交换位置后,各自移动到下一个字符,直到两个指针相遇。
    class Solution { public void reverseString(char[] s) { for (int left = 0, right = s.length - 1; left < right; left++, right--) { char t = s[left]; s[left] = s[right]; s[right] = t; } } }

    作者:an-wen-kai (本人leetcode账号) 链接:https://leetcode-cn.com/problems/reverse-string/solution/shuang-zhi-zhen-zuo-de-dan-zui-kai-shi-zuo-de-you-/

    Processed: 0.015, SQL: 12