Escolar Documentos
Profissional Documentos
Cultura Documentos
Resolver un crucigrama.
Hacer un sudoku.
Conceptualmente sencillo
`
`
`
`
100% precisa
Finitud vs genericidad potencialmente infinita!
Datos: cantidad (finita) de naturales Nk
Cada natural se representa por una secuencia
(finita, suficientemente larga) de bits (base 2).
Simplificar matemticamente (sin prdida de
generalidad) usando el isomorfismo: Nk ~ N
Problema (potencialmente algortmico)
funcin f : Nk
Nl que se desea computar
1 : I1
2 : I2
...
n : In
`
`
`
Registros de entrada
Registros de salida
Registros auxiliares (tambin preestablecidos)
`
`
`
COPIAR(R,S)
INCREMENTAR(R)
DECREMENTAR_CONDICIONAL(R,j)
Si R > 0 modificamos R a R-1,
en caso contrario ir a Ij
`
`
SALTO_INCONDICIONAL(k) Ir a Ik
TERMINAR
Instrucciones bsicas
Asignacin R := E(R)
Constructores estructurados
Secuencia [I1,...,Ik]
...
I11
Condicional
si C entonces I1 si-no I2
Bucles repetitivos
repetir I hasta-que C
Ikk
C
I11
I22
I
F
C
Alonzo Church
padre del -clculo
N }| = 1
|U Nk | = 0
`
El problema de parada.
Clculo de determinantes
Aplicacin de la definicin
Mtodo de Gauss
Funcin de Fibonacci:
F(0) = F(1) = 1
F(n+2) = F(n+1) + F(n)
8
1
7
2
4
7
10
5
P = NP?
Esquemas algortmicos
Ingeniera?
Arte?
Niklaus Wirth,
1976
Memoria vs Tiempo
Secuencia de fichas
Secuencia ordenada de fichas
rbol binario de bsqueda
Estticas
Dinmicas
Secuencias
Pilas
Colas
rboles
Tablas hash
mochila(i-1,j)
si pi>j
mx{mochila(i-1,j),mochila(i-1,j-pi)+vi}
si pij
no coger objeto i
coger objeto i
con 1 i n, 1 j M
casos bsicos: mochila(0,j) = 0, 0 j M
mochila(i,0) = 0, 0 i n
Identificacin
Construccin
`
`
Max Bezzel,
1848
http://www.hbmeyer.de/backtrack/achtdamen/eight.htm#up
Paperbacks 1993
`
Anaya 2006
https://campusvirtual.ucm.es:443/SCRIPT/po
rtal-uatducma-5/scripts/serve_home
` Vedya (Visualizacin de algoritmos y
estructuras de datos)
http://www.fdi.ucm.es/profesor/csegura/
`