Professional Documents
Culture Documents
Variables de Entrada: Sern las palabras a evaluar, almacenadas en un vector de cadenas llamado
palabras.
Variable de Salida: Una cadena que indica si es posible o imposible que exista un alfabeto
compatible con las palabras indicadas como variables de entrada.
int main()
Palabra1
Palabra n
Mtodo isOrdered()
P1
Vector <String>
Declarar un vector Parents
Words
de sets, para almacenar los
antecesores de cada letra
SI
Hay
palabras NO
para o
analizar?
SI
n=1
Final de la SI
Palabra a analizar palabra?
Resultado
NO
Insertar los antecesores
Comparar letras de dos en del a letra en el vector
dos ( posicin n y n-1) Parents
Resultado =Possible;
La letra en n SI
n=n+1
tiene antecesores
validos en
Parents?
Resultado
NO
=Impossible
4. Descripcin del conocimiento procedural
El proceso consiste en recibir como entradas las palabras a evaluar, las cuales sern almacenadas
en una vector de String, por ejemplo podemos tener el vector Palabras {angular; aguila}.
Luego creamos un arreglo al que llamaremos Parents, dicho arreglo es un vector de sets, y tendr
26 listas set, cada lista le corresponde a una determinada letra, y almacenar los antecesores de
dicha letra en el alfabeto que intentamos descifrar.
A
B
C
D
Vector Parents
X
Y
Z
n a Antecesores de n
Luego analizamos las letras n y g, buscamos entre los antecesores de g, a la letra n, como la
encuentra procedemos a registrar los antecesores de g.
g a n
Antecesores de g y n
n a
g a n
n a Antecesores de g, n y u
u a n g
g a n
a Antecesores de g, n, u y l
n
u a n g
a n g u
l