Algoritmos - PowerPoint PPT Presentation

About This Presentation
Title:

Algoritmos

Description:

Algoritmos 1 Definiciones de Algoritmos Es un procedimiento computacional bien definido que toma alg n valor, o un conjunto de valores, como entrada y produce alg n ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 29
Provided by: infUdecC1
Category:
Tags: algoritmos

less

Transcript and Presenter's Notes

Title: Algoritmos


1
Algoritmos
2
Definiciones de Algoritmos
  • Es un procedimiento computacional bien definido
    que toma algún valor, o un conjunto de valores,
    como entrada y produce algún valor, o un conjunto
    de valores, como salida.
  • Es una secuencia de pasos computacionales para
    transformar la entrada en la salida.
  • Es una herramienta para solucionar un problema
    computacional bien especificado.

1
3
Estratégia Dividir para gobernar
Dividir el problema en subproblemas En la
resolución de un problema complejo, se divide en
varios sub problemas y seguidamente se vuelven a
dividir los sub problemas en otros mas sencillos,
hasta que puedan implementarse en el computador.
1
4
Diseño top-down
  • Se entiende como diseño descendente ( Top-Down /
    Norte-Sur ) o diseño modular
  • El proceso de ruptura del problema en cada etapa
    se llama refinamiento sucesivo.
  • Cada problema se resuelve mediante un modulo
    (subprograma) y tiene un solo punto de entrada y
    un solo punto de salida.
  • Un programa bien diseñado consta de un programa
    principal (modulo de nivel mas alto) que llama a
    subprogramas (módulos de nivel mas bajo), que a
    su vez pueden llamar otros subprogramas.
  • Los programas que se estructuran de esta forma,
    se dicen que tienen diseño modular y el método de
    romper el programa en modos pequeños se llama
    programación modular.

1
5
Definición formal del problema de búsqueda
  • Entrada
  • secuencia de n números lta1, a2,..,angt
  • Un número b
  • Salida
  • un entero i, tal que b ai (igual)
  • 0 si b ! ai, para i 1,...,n
  • Ejemplo instancia
  • Entrada lt5, 6, 9, 12gt y 9
  • Salida 3

1
6
Definición formal del problema de ordenamiento
  • Entrada
  • secuencia de n números lta1, a2,..,angt
  • Salida
  • Una permutación lta'1, a'2,..,a'ngt reordenamiento
    de la secuencia, tal que
  • a'1 lt a'2 lt ... lt a'n
  • Ejemplo instancia
  • Entrada lt5,3,1,6,0gt
  • Salida lt0,1,3,5,6gt

1
7
Definición formal del problema cálculo del
factorial
Entrada Número entero n Salida Número entero
fac(n) tal que 0 si n lt 0
1 si n 0
1 si n 1 n fac(n-1)
si n gt 1 Ejemplo instancia Entrada 3
Salida 6
fac(n)
1
8
Definición formal del problema máximo común
divisor
Entrada Números enteros m,n Salida Número
entero mcd(n) tal que n si
mn 0
mcd(n, mn) si mn gt
0 Ejemplo instancia Entrada 105, 6
Salida 3
mcd(n)
1
9
Algoritmos de Búsqueda
10
Algoritmos de Búsqueda
  • DefiniciónSon algoritmos para encontrar un dato
    dentro de una estructura o arreglo
  • - Se ha desarrollado un conjunto de algoritmos
    de búsqueda que varían en complejidad, eficiencia
    y tamaño del dominio de búsqueda.
  • - Si se conoce por anticipado en qué tipo de
    orden inicial se encuentran los datos, es
    posible elegir un algoritmo que sea más adecuado.

1
11
Tipos de Búsqueda
  • - Búsqueda Secuencial.
  • - Búsqueda Binaria.

1
12
Búsqueda Secuencial
  • Consiste en ir comparando el elemento que se
    busca con cada elemento del arreglo hasta que se
    encuentra.

0 1 2 3 4 5
6 7 8 9
1
13
Algoritmo Búsqueda Secuencial

1
14
Búsqueda Binaria
  • Los elementos del arreglo se encuentran
    ordenados y no están repetidos. En cada iteración
    el dominio de búsqueda se divide en 2.

0 1 2 3 4 5 6
7
1
15
Algoritmo Búsqueda Binaria
1
16
Algoritmo de Búsqueda
  • Ejercicios
  • - Crear un programa que busque un caracter dentro
    de un vector.
  • - Crear un programa que busque el número más
    pequeño en un vector.
  • - Buscar un número seleccionado dentro de un
    arreglo ordenado.
  • - Hacer lo mismo pero con una lista encadenada.

1
17
Algoritmos de Ordenamiento
18
Algoritmos de Ordenamiento
  • Definición
  • Son algoritmos que fueron realizados para ordenar
    un conjunto de datos. Los algoritmos varían según
    su facilidad de entendimiento, su eficiencia,
    cantidad de código necesario para implementarlos,
    complejidad, requisitos necesarios de los datos.

1
19
Algoritmos de Ordenamiento
  • Tipos de Algoritmos
  • 1.- Ordenamiento Burbuja.
  • 2.- Quick-Sort

1
20
Ordenamiento Burbuja
  • El algoritmo consiste en que los elementos más
    pesados se hundan y los más livianos salgan a
    flote.

1
21
Ordenamiento Burbuja
  • Algoritmo

1
22
Algoritmos de Ordenamiento
  • Ejercicios
  • - Ordenar un conjunto de n enteros de menor a
    mayor.
  • - Lo mismo pero en lista encadenada

1
23
Búsqueda secuencial bidimensional por filas
  • Algoritmo

1
24
Búsqueda secuencial bidimensional por columnas
  • Algoritmo

1
25
Stack o Pila
  • Definición
  • Una pila es una estructura de datos, a la cual
    se le puede ingresar o sacar elementos por un
    sólo lado. También se conoce como LIFO (Last In
    First Out).

1
26
Stack o Pila (cont.)
  • Operaciones básicas
  • Insertar inserta un elemento en el tope de la
    pila.
  • Sacar Saca un elemento del tope de la pila.
  • Tope Muestra el elemento ubicado en el tope de
    la pila.
  • Vacía Retorna verdadero si la pila está vacía.

1
27
Fila o cola
  • Definición
  • Una pila es una estructura de datos, a la cual
    se le puede ingresar elementos por un lado y
    retirar por el otro. También se conoce como FIFO
    (First In First Out).

28
Fila o cola (cont.)
  • Operaciones básicas
  • Insertar inserta un elemento alfinal de la fila.
  • Sacar Saca un elemento del inicio de la fila.
  • Vacía Retorna verdadero si la pila está vacía.
Write a Comment
User Comments (0)
About PowerShow.com