Titulo:
Escriba una función cuya función sea invertir la cadena de entrada. La cadena de entrada se proporciona como una matriz de caracteres char [].
No asigne espacio adicional a otra matriz, debe modificar la matriz de entrada en su lugar y usar O (1) espacio adicional para resolver este problema .
Puede suponer que todos los caracteres de la matriz son caracteres imprimibles en la tabla de códigos ASCII.
Ejemplo 1:
输入 : ["h", "e", "l", "l", "o"]
输出 : ["o", "l", "l", "e", "h"]
示例 2 :
输入 : ["H", "a", "n", "n", "a", "h"]
输出 : ["h", "a", "n", "n", "a", "H"]
Fuente: LeetCode
Enlace: https://leetcode-cn.com/problems/reverse-string
Respuesta:
Al principio utilicé la paridad, pero luego no creo que sea necesario.
Solución de clase { public void reverseString ( char [] s) { int len = s.length; if (s.length> 0 ) { int center = len / 2 ; for ( int i = 0; i <center; i ++ ) { char left = s [i]; s [i] = s [len - 1 - i]; s [len - 1 - i] = izquierda; } // 偶数 // if (centro && 1 == 0) { // for (int i = 0; i <center; i ++) { // char left = s [i]; // s [i] = s [len - 1 - i]; // s [len - 1 -i] = izquierda; // } // } else { // for (int i = 0; i <center; i ++) { // char left = s [i]; // s [i] = s [len - 1 - i]; // s [len - 1 -i] = izquierda; // } // } } } }
Escritura de otras personas:
para ( int i = 0, j = s.length-1; i <= j; i ++, j-- ) { char a = s [i]; s [i] = s [j]; s [j] = a; } 作者 : zyfsuzy