1.题目
2.思路
方法一:比如有5个元素
s[0],s[1],s[2],s[3],s[4]
反转之后对应
s[4],s[3],s[2],s[1],s[0]
所以s[0]=s[4],
s[1]=s[3]
s[i]=s[n-1-i]
方法2:双指针
left=0,right=s.length-1;
当left<right的时候,交换两个元素的位置,左指针左移,右指针右移
3.代码实现
class Solution {public void reverseString(char[] s) {// int n=s.length;// for(int left=0,right=n-1;left<right;left++,right--)// {// char tmp=s[left];// s[left]=s[right];// s[right]=tmp;// }int n=s.length;for(int i=0;i<n/2;i++){char tmp=s[i];s[i]=s[n-1-i];s[n-1-i]=tmp;}}
}
class Solution {public void reverseString(char[] s) {// int n=s.length;// for(int left=0,right=n-1;left<right;left++,right--)// {// char tmp=s[left];// s[left]=s[right];// s[right]=tmp;// }// int n=s.length;// for(int i=0;i<n/2;i++)// {// char tmp=s[i];// s[i]=s[n-1-i];// s[n-1-i]=tmp;// }int left=0;int right=s.length-1;while(left<right){char tmp=s[left];s[left]=s[right];s[right]=tmp;left++;right--;}}
}