ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
>[success] # 344. 反转字符串 * 描述 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。   * 示例 1: ~~~ 输入:s = ["h","e","l","l","o"] 输出:["o","l","l","e","h"] ~~~ * 示例 2: ~~~ 输入:s = ["H","a","n","n","a","h"] 输出:["h","a","n","n","a","H"] ~~~ 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/reverse-string 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 >[info] ## 对撞指针 * 指针从左右出发,进行对应值交换,当两个指针相互对撞则结束 ![](https://img.kancloud.cn/da/c3/dac307d0824c73d127e65d3bb1ed563d_1461x1318.png) >[danger] ##### js ~~~ /** * @param {character[]} s * @return {void} Do not return anything, modify s in-place instead. */ var reverseString = function(s) { let right = s.length - 1 let left = 0 while(right >= left){ ;[s[left],s[right] ]=[s[right],s[left]] right -- left ++ } }; ~~~ >[danger] ##### java ~~~ class Solution { public void reverseString(char[] s) { int right = s.length-1; int left = 0; while(left < right){ char c = s[left]; s[left] = s[right]; s[right] = c; left++; right--; } } } ~~~