Professional Documents
Culture Documents
Algoritmos DE BUSQUEDA
En un documento en Word elabore diferentes algoritmos de bsqueda sin
informacin de dominios, en juegos tales como: sopa de letras, sudoku. Enva tu
archivo a travs de este medio.
ALGORITMO DE BUSQUEDA
Un algoritmo de bsqueda es aquel que est diseado para localizar un elemento
con ciertas propiedades dentro de una estructura de datos; por ejemplo, ubicar el
registro correspondiente a cierta persona en una base de datos, o el mejor
movimiento en una partida de ajedrez.
La variante ms simple del problema es la bsqueda de un nmero en un vector.
Los algoritmos presentan diferencias entre ellos que los convierten en ms o
menos eficientes y prcticos segn sea la rapidez y la eficiencia demostrada por
cada uno de ellos.
Una sopa de letras se puede definir como un juego de destreza y rapidez mental,
donde se tiene que encontrar un nmero finito de palabras. Dichas palabras estn
definidas previamente en el mismo juego y estn ocultas en una matriz cuadrada
de letras. La bsqueda de las palabras en la matriz se puede realizar de la
siguiente forma:
Lo primero que haramos para resolver la sopa de letra anterior, es crear nuestro
ndice invertido, tomando como vocabulario la primera letra de cada palabra a
buscar y como lista de posteo las posiciones de esa letra en la matriz de letras, de
esta forma tendramos los siguientes datos:
A: {(0,5), (0,8), (6,6)}
E: {(0,0), (9,0), (9,9)}
El par ordenado que se encuentra en la lista de posteo corresponde a la expresin
(fila, columna) en la matriz de letras. As, por ejemplo, la letra A con la que
comienza la palabra AULA, se encuentra en la matriz, en las posiciones (0,5) (0,8)
y (6,6). La letra E que corresponde a la palabra ESTUDIANTE, se encuentra en
las posiciones (0,0) (9,0) y (9,9). En el caso de la palabra XITO, si nos damos
cuenta la letra inicial es la misma que la de ESTUDIANTE por lo tanto ya tenemos
esa referencia guardada previamente en el ndice invertido.
La idea general para armar esta estructura, es:
4 INGENIERIA DE SISTEMAS E INFORMATICA
Edwin Antonio
SUDOKU
2
1
8
4
1
8
6
7
5
9
7
3
4
6
9
2
7
1
5
8
9
3
6
9
1
5
2
4
4
6
3
2
8
7
4
2
9
3
1
7
3
5
2
8
7
6
5
9
8
1
6
4
5
8
6
7
3
8
6
9
4
5
3
5
4
6
2
1
8
4
6
7
8
1
4
5
8
5
7
6
4
5
3
6
7
5
6
7
2
9
5
4
Nivel deDificultad
Orden
Facil
Medio
Difcil
MuyDifcil
0a35
36a50
51a63
64
El algoritmo es el siguiente:
1. El usuario determina el nivel de dificultad.
2. Se selecciona aleatoriamente un elemento de la base de datos.
3. Una rotacin aleatoria y una permutacin aleatoria se aplican al elemento
bsico.
4. Si el nivel mximo de dificultad es escogido, imprime el elemento bsico
transformado; de otro modo se aplica la funcin hint a dicho elemento las
veces que se necesite hasta que el Sudoku inicial alcance el orden deseado
de acuerdo al nivel de dificultad requerido, y finalmente, imprime el Sudoku
inicial bien definido resultante.
Para
cada
nivel de dificultad
se muestra un
Sudoku
inicial
definidogenerado por el algoritmo, con su correspondiente solucin.
8
5
2
3
9
1
4
8
5
6
8
5
5
2
8
1
3
9
2
3
5
8
5
8
7
9
1
5
2
4
8
3
6
5
6
2
8
3
7
3
4
8
2
7
5
8
5
7
4
1
2
9
6
3
2
3
6
7
8
9
1
5
4
9
1
4
3
6
5
7
2
8
4
8
5
6
7
1
3
9
2
6
7
9
2
4
3
5
8
1
1
2
3
9
5
8
6
4
7
7
9
1
5
2
4
8
3
6
5
6
2
8
3
7
4
1
9
3
4
8
1
9
6
2
7
5
bien