反转字符串(Java实现)

    技术2022-07-10  89

    反转字符串


    题目

    反转字符串(力扣:344)

    编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。

    不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

    你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

    分析

    双指针求解。

    使用两个指针,一个左指针 left,右指针right,开始时left指向首元素,right指向尾元素。交换两个指针指向的元素,并向中间移动,直到两个指针相遇。

    代码实现

    /** * 344. 反转字符串 * @param s */ public void reverseString(char[] s) { int left = 0, right = s.length-1; char tmp; while (left<right){ tmp = s[left]; s[left] = s[right]; s[right] = tmp; left++; right--; } }
    Processed: 0.026, SQL: 9