¿Cómo utilizar C# para recorrer la mayoría de las letras? Por ejemplo, cuando la longitud es 1, genera ABC E...z. Cuando la longitud es 2, genera aa ab ac...zz y así sucesivamente.
Prueba de clase pública{
/**
* @param args
*/ p>
Public static void main(String[] args) {
//TODO código auxiliar de método generado automáticamente
// Sin requisitos especiales, de la A a la Z.
//show(3);
//Requisitos especiales, del valor1 al valor2, no se admite el recorrido de tipo cruzado, como 1 a a, a a z.
show(2, "Z", "A");
}
/**
*Imprimir los resultados del recorrido.
*
* @param length
*Longitud de cadena atravesada
* */
vacío estático público mostrar(int longitud){
mostrar(longitud, "a", "z");
}
/**
*Imprime los resultados del recorrido; actualmente solo admite de la a a la z, de la a a la z y de 0 a 9.
*
* @param length
*Longitud de cadena atravesada
* */
vacío estático público show(int length, String start, String end) {
if(length& lt= 0) {
System.out.println("Tiempo de procesamiento: 0 "); p>
Retorno;
}
if(begin . hashcode()-end . hashcode()> 0) {
Cadena a = comenzar
Inicio = fin;
fin = a;
}
booleano isInt = verdadero
Probar {
integer . parse int(begin);
Prueba {
integer . parse int(end); Excepción, por ejemplo) {
System.out.println("Actualmente solo se admite el recorrido de la a a la z, de la a a la z y del 0 al 9");
Retorno;
}
} catch (Excepción ex) {
isInt = false
}
if(! isInt) {
if (!(begin . hashcode()>= 65 && ampend .hashcode()<= 90)
&& amp! (begin . hashcode() >= 97 & amp& ampend . hashcode()<= 122)) {
System.out.println("Por ahora solo admite la a a la z, recorrido de la a a la z, de 0 a 9 ");
Regresar;
}
if(math . ABS(begin . hashcode()- end . hashcode())> 25) {
System.out.println("Actualmente solo se admite el recorrido de la a a la z, de la a a la z y del 0 al 9");
p>Retorno; p>
}
}
largo d1 = nuevaFecha(). getTime();
int a =(int)math . pow(end . hashcode()-begin . hashcode()+1, length);
Cadena b = comenzar
mientras(b . longitud()& lt; longitud){
b+ = comenzar;
}
mientras(a & gt ; 0) {
sistema. println(b);
b = getNextValue(b, inicio, fin) + " "; ;
}
largo d2 = nuevaFecha(). getTime();
System.out.println("Cantidad:"
+(int)math . pow(end . hashcode()-begin . hashcode()+1, longitud)
+" \tTiempo de procesamiento:"+(D2-d 1));
}
/**
*Obtiene el siguiente valor del objeto pasado.
*
* @param a
*Objeto de operación
* */
Cadena estática pública getNextValue (objeto a, inicio de cadena, final de cadena){
cadena b = a+" ";
if (b.length() == 1) {
if (b. Igual a (fin))
return comenzar+comenzar;
si no (b. Igual a (" 9 "))
Devuelve "10";
else if (b.equals("`")
Devuelve "aa";
Otros
Cadena de retorno. valor de((char)(b . hashcode()+1));
}De lo contrario, {
if(b . substring(b . length()- 1). ). Igual a (fin))
Devuelve getNextValue(b.substring(0, b.length() - 1), comenzar, finalizar)
+begin;
else if(b . substring(b . length()-1). es igual a (" 9 "))
Devuelve getNextValue(b.substring(0, b.length() - 1 ), comenzar, finalizar)
+ "0";
else if(b . substring(b . length()-1). Igual a ("`") p >
Devuelve getNextValue(b.substring(0, b.length() - 1), inicio, fin)
+"a";
Otros
Devuelve b.substring(0, b.length() - 1)
+valor de((char)(b . substring(b . length()-1)
.hashCode()+1));
}
}
}
Puede ser lo mismo como lo que pediste. Los métodos son diferentes, pero el resultado debe ser correcto.