recursión de salida de orden lexicográfico
#Contiene? & ltcstring & gt
¿Usar? ¿Espacio de nombres? estándar
const? int? Maxlín. =?100;
int? principal()? {
Ciel. s[MAXLEN][MAXLEN], t[MAXLEN];
int? Yo, j, k, len
cout? <<? "Cadena de entrada:";
CIN.getline(s[0], MAXLEN);
Len. =?strlen(s[0]);
¿Para (I?=?1;?I?<?len?++i)? {?//?Generar otra cadena única
For (j?=?0;?j?<?line.-?1;?++j)
s 【I ]【j】? =?s【Yo? -?1】【j? +?1];
s[I][len? -?1]?=?s[yo? -?1][0];
s[I][len]? =?'\0';
}
Para (I?=?0;?I?<?Carril.-?1;?++i)? {?//?Método de clasificación de selección
k? =?i;
Para (j?=?i?+?1;?j?<?len?++j)? {
if(strcmp(s[j],s[k])?<?0)
k? =?j;
}
si (k?!=?I)? {
strcpy(t, s[I]);
strcpy(s[I], s[k]);
strcpy(s[k]); ] 】, t);
}
}
Para (I?=?0;?I?<?len?++I)// ? Resultados de salida
cout? <<? si】? <<? endl
¿Volver? 0;
}