English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
en este ejemplo, verificaremos si una cadena es una重组 válida de otras dos cadenas en Java (desorden).
para entender este ejemplo, debe entender lo siguienteprogramación en Javatema:
class Main { //verificar si la cadena de resultados es una desorden válida de las cadenas primera y segunda static boolean shuffleCheck(String first, String second, String result) { //verificar si la longitud del resultado coincide con //la suma total de los resultados del primer y segundo if(first.length() + second.length() != result.length()) { return false; } //seguimiento3variables para cada carácter de las cadenas int i = 0, j = 0, k = 0; //recorrer todos los caracteres del resultado while (k != result.length()) { //verificar si el primer carácter del resultado coincide con el primer carácter de la primera cadena if (i < first.length() && first.charAt(i) == result.charAt(k)) { i++; //verificar si el primer carácter del resultado coincide con el primer carácter de la segunda cadena } else if (j < second.length() && second.charAt(j) == result.charAt(k)) { j++; //si los caracteres no coinciden } else { return false; } //acceder al siguiente carácter del resultado k++; } //después de acceder a todos los caracteres del resultado //si el primer o segundo tiene algunos caracteres restantes if(i < first.length() || j < second.length()) { return false; } return true; } public static void main(String[] args) { String first = "XY"; String second = "12"; String[] results = {"1XY2", "Y12X"}; //Llame al método para verificar si la cadena de resultados es //la mezcla de first y second for (String result : results) { if (shuffleCheck(first, es, result) == true) { System.out.println(result + " es" + first + " y" + second + "recomposición válida"); } else { System.out.println(result + " no es" + first + " y" + second+ "recomposición válida"); } } } }
resultados de salida
1XY2 es XY y 12 recomposición válida Y12X no es XY y 12 recomposición válida
En el ejemplo anterior, tenemos un array de cadenas llamado results. Contiene dos cadenas:1XY2y Y12X. Estamos verificando si estas dos cadenas son cadenas válidas first(XY) y second(12)。
Aquí, el programa dice1XY2es una baraja válida XY y12pero Y12X Esto no es una baraja válida.
porque Y12X cambió el orden de las cadenas XY. Aquí, Y se utiliza en lugar de X. Por lo tanto, como重组有效,se debe mantener el orden de las cadenas.