You are on page 1of 6

UNAD

ESTRUCTURA DE DATOS

CLAUDIA IVOON MARTNEZ GMEZ

[ Actividad 2. Identificacin de la relacin entre algoritmos y estructuras de datos]


Algoritmo
Un Algoritmo, se puede definir como una secuencia de instrucciones que representan un modelo
de solucin para determinado tipo de problemas. O bien como un conjunto de instrucciones que
realizadas en orden conducen a obtener la solucin de un problema. Por lo tanto podemos decir
que es un conjunto ordenado y finito de pasos que nos permite solucionar un problema. Los
algoritmos son independientes de los lenguajes de programacin. En cada problema el algoritmo
puede escribirse y luego ejecutarse en un lenguaje de diferente programacin. El algoritmo es la
infraestructura de cualquier solucin, escrita luego en cualquier lenguaje de programacin.
Programa:
Un programa es una serie de instrucciones ordenadas, codificadas en lenguaje de programacin
que expresa un algoritmo y que puede ser ejecutado en un computador.
CLASIFICACIN DE ALGORITMOS:
Los algoritmos se pueden clasificar en cuatro tipos:
Algoritmo computacional
Es un algoritmo que puede ser ejecutado en una computadora. Ejemplo: Frmula aplicada para un
clculo de la raz cuadrada de un valor x.
Algoritmo no computacional:
Es un algoritmo que no requiere de una computadora para ser ejecutado. Ejemplo: Instalacin de
un equipo de sonido.
Algoritmo cualitativo:
Un algoritmo es cualitativo cuando en sus pasos o instrucciones no estn involucrados clculos
numricos. Ejemplos: Las instrucciones para desarrollar una actividad fsica, encontrar un tesoro.
Algoritmo cuantitativo:
Un algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran clculos numricos.
Ejemplo: Solucin de una ecuacin de segundo grado.
CARACTERSTICAS DE UN ALGORITMO:
Todo algoritmo debe tener las siguientes caractersticas:
1. Debe ser Preciso, porque cada uno de sus pasos debe indicar de manera precisa e inequvoca
que se debe hacer.
2. Debe ser Finito, porque un algoritmo debe tener un nmero limitado de pasos.
3. Debe ser Definido, porque debe producir los mismos resultados para las mismas condiciones de
entrada.
4. Puede tener cero o ms elementos de entrada.
5. Debe producir un resultado. Los datos de salida sern los resultados de efectuar las
instrucciones.
PARTES DE UN ALGORITMO:
Todo Algoritmo debe tener las siguientes partes:
Entrada de datos, son los datos necesarios que el algoritmo necesita para ser ejecutado.
Proceso, es la secuencia de pasos para ejecutar el algoritmo.
Salida de resultados, son los datos obtenidos despus de la ejecucin del algoritmo.
TCNICAS DE REPRESENTACIN:
Para la representacin de un algoritmo, antes de ser convertido a lenguaje de programacin, se
utilizan algunos mtodos de representacin escrita, grfica o matemtica. Los mtodos ms
conocidos son:
Diagramacin libre (Diagramas de flujo).
Diagramas Nassi-Shneiderman.
Pseudocdigo.
Lenguaje natural (espaol, ingls, etc.).
Frmulas matemticas.
Define Estructura de Datos
En programacin, una estructura de datos es una forma de organizar un conjunto de datos
elementales con el objetivo de facilitar su manipulacin. Un dato elemental es la mnima
informacin que se tiene en un sistema.
Una estructura de datos define la organizacin e interrelacin de stos y un conjunto de
operaciones que se pueden realizar sobre ellos. Las operaciones bsicas son:
Alta, adicionar un nuevo valor a la estructura.
Baja, borrar un valor de la estructura.
Bsqueda, encontrar un determinado valor en la estructura para realizar una operacin con este
valor, en forma SECUENCIAL o BINARIO (siempre y cuando los datos estn ordenados)... Otras
operaciones que se pueden realizar son:
Ordenamiento, de los elementos pertenecientes a la estructura.
Apareo, dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas. Cada
estructura ofrece ventajas y desventajas en relacin a la simplicidad y eficiencia para la realizacin
de cada operacin. De esta forma, la eleccin de la estructura de datos apropiada para cada
problema depende de factores como la frecuencia y el orden en que se realiza cada operacin
sobre los datos.
Estructuras de datos bsicas (listas, colas y pilas)
Lista Enlazada:
Es un TDA que nos permite almacenar datos de una forma organizada, al igual que los vectores
pero, a diferencia de estos, esta estructura es dinmica, por lo que no tenemos que saber "a
priori" los elementos que puede contener. En una lista enlazada, cada elemento apunta al
siguiente excepto el ltimo que no tiene sucesor y el valor del enlace es null. Por ello los
elementos son registros que contienen el dato a almacenar y un enlace al siguiente elemento. Los
elementos de una lista, suelen recibir tambin el nombre de nodos de la lista. Para que esta
estructura sea un TDA lista enlazada, debe tener unos operadores asociados que permitan la
manipulacin de los datos que contiene. Los operadores bsicos de una lista enlazada son:
Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta insercin al principio o
final de la lista o bien en orden.
Eliminar: elimina un nodo de la lista, puede ser segn la posicin o por el dato.
Buscar: busca un elemento en la lista.
Localizar: obtiene la posicin del nodo en la lista.
Vaciar: borra todos los elementos de la lista
Listas doblemente enlazadas:
El TDA lista doblemente enlazada, al igual que la lista enlazada, es un TDA dinmico lineal pero, a
diferencia de este, cada nodo de la lista doblemente enlazada contiene dos punteros, de forma
que uno apunta al siguiente nodo y el otro al predecesor. Esta caracterstica, permite que se
pueda recorrer la lista en ambos sentidos, cosa que no es posible en las listas simples.
Colas:
Una cola es una estructura de datos donde el primer elemento en entrar es el primero en salir,
tambin denominadas estructuras FIFO (First In, First Out). Esta estructura de datos se puede
definir como una lista enlazada con acceso FIFO a la que slo se tiene acceso al final de la lista para
meter elementos y al principio de esta para sacarlos.
Pilas:
Una pila, es una estructura de datos en la que el ltimo elemento en entrar es el primero en salir,
opr lo que tambin se denominan estructuras LIFO (Last In, First Out ). En esta estructura slo se
tiene acceso a la cabeza o cima de la pila.
Tambin tenemos: Arreglos
Un arreglo es una secuencia contigua de un nmero fijo de elementos homogneos.
rboles
Un rbol se define como una coleccin de nodos organizados en forma recursiva. Cuando hay 0
nodos se dice que el rbol est vaco, en caso contrario el rbol consiste en un nodo denominado
raz, el cual tiene 0 o ms referencias a otros rboles, conocidos como subrboles . Las races de
los subrboles se denominan hijos de la raz, y consecuentemente la raz se denomina padre de
las races de sus subrboles.
rboles binarios
Un rbol binario es un rbol en donde cada nodo posee 2 referencias a subrboles (ni ms, ni
menos). En general, dichas referencias se denominan izquierda y derecha, y consecuentemente
se define el subrbol izquierdo y subrbol derecho del rbol.
rboles generales
En un rbol general cada nodo puede poseer un nmero indeterminado de hijos. La
implementacin de los nodos en este caso se realiza de la siguiente manera: como no se sabe de
antemano cuntos hijos tiene un nodo en particular se utilizan dos referencias, una a su primer
hijo y otra a su hermano ms cercano. La raz del rbol necesariamente tiene la referencia a su
hermano como null


Qu relacin encuentras entre un algoritmo y una estructura de datos?
Los sistemas o mtodos de organizacin de datos que permiten un almacenamiento eficiente de la
informacin en la memoria del computador son conocidos como estructuras de datos. Estos
mtodos de organizacin constituyen las piezas bsicas para la construccin de algoritmos
complejos, y permiten implementarlos de manera eficiente.
Fuentes:
http://informaticafrida.blogspot.mx/2009/03/algoritmo.html
http://robotica.uv.es/pub/Libro/PDFs/CAPI5.pdf
http://www.calcifer.org/documentos/librognome/glib-lists-queues.html
http://users.dcc.uchile.cl/~bebustos/apuntes/cc30a/Estructuras/

You might also like