Cíñete a la programación
typedef estructura {
char ch[2][MaxStrSize];
int length;
} SeqString
Supongamos que la línea 0 de ch almacena el alfabeto original y la línea 1 almacena la tabla de mapeo. El algoritmo específico es el siguiente:
(1)codificación nula (char *S, SeqString T){
//Establezca la cadena S para almacenar el texto a cifrar y T para almacenar el alfabeto y la superficie cartográfica.
int i,j;
int m = T.length//El alfabeto es muy largo
int n = strlen(S);//String Longitud
for(I = 0;iltn;I){ //Escanear cadena de texto
for(j = 0;iltm;J) //Escanear alfabeto
if(S[i]==T.ch[0][j]){
printf("c ",t . ch[1][j]);/ /salida cifrada
Break; //salir del bucle interno
}
if(j==m) error("c no está en el alfabeto", s [ I]);
}
}
(2) La decodificación nula (char * s, seq string t) {//s debe descifrarse String .
int i, j;
int m = T.length//El alfabeto es muy largo
int n = strlen(S);//Cadena Longitud
for(I = 0;iltn;I){ //Escanear cadena de texto
for(j = 0;iltm;J) //Escanear alfabeto
if(S[i]==T.ch[1][j]){
printf("c ",t . ch[0][j]);/ /salida cifrada
Break; //salir del bucle interno
}
if(j==m) error("c no está en el alfabeto", s [ I]);
}
}
La complejidad temporal de los dos algoritmos anteriores es O (m*n).
Puedo ayudarte. Después de configurar mi mejor respuesta, te enseñaré Baidu Hii.