编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。
来源:力扣(LeetCode)
Java
class Solution { public void reverseString(char[] s) { int len = s.length;//获取数组长度 char temp;//中间者 if(len%2 != 0){//判断数组长度值,选中不同的方法执行 //奇数 int BiaoWei = (int)(len/2);//标位 for(int i = 0; i < BiaoWei;i++){ //开始转换 temp = s[i]; s[i] = s[len-i-1]; s[len-i-1] = temp; } }else{ //偶数 int BiaoWei = (int)(len/2); for(int i = 0;i<=BiaoWei-1;i++){ temp = s[i]; s[i] = s[len-i-1]; s[len-i-1] = temp; if(i == BiaoWei-1){ break; } } } } }
python
class Solution: def reverseString(self, s: List[str]) -> None: """ Do not return anything, modify s in-place instead. """ i , j = 0,len(s)-1 while(i < j): s[i] , s[j] = s[j] , s[i] i = i+1 j = j-1