Está en la página 1de 53

Instituto Superior de Educación Técnica N° 2

CARRERA: Técnico Superior en Análisis de Sistemas


Asignatura: Teoría de la Información I

Estructura de la Información

Prof. Álvaro Ariel Castillo – Comisión A


Prof. Luciano Galeano – Comisión B
Unidad.1
Computación
Computación se refiere al estudio científico que se desarrolla sobre
sistemas automatizados de manejo de informaciones, lo cual se lleva a
cabo a través de herramientas pensadas para tal propósito.

Es de este modo, que aparecen


conceptos como la PC, Tecnología,
Internet, Informática, que se vinculan
entre sí en el marco del
procesamiento y movilidad de la
información.
Sistema
Es un conjunto de elementos con relaciones de interacción e interdependencia
que le confieren entidad propia al formar un todo unificado.
Un sistema real es una entidad material formada por partes organizadas (o sus
componentes) que interactúan entre sí.

Entrada Proceso Salida


Sistemas centralizados

Concentran en un departamento especializado el equipamiento, el personal y


las informaciones (organizadas con un criterio departamental y no sistémico,
implicando duplicidades e incoherencia). Esta arquitectura se utiliza en la
actualidad en pequeñas empresas, que cuentan sólo con una microcomputadora
procesando toda la información centralizadamente

Desventajas

- Dependencia de los usuarios al departamento central de


procesamiento de datos.
- Atrasos en las entregas de los resultados.
- Diferentes prioridades con afectación a usuarios.
- Cuellos de botella.
Sistemas descentralizados
Caracterizado por equipos y B.D ubicadas en las áreas de trabajo, o sea más
cercanas a los centros de toma de decisiones

Ventajas
Buenos resultados a nivel de área o departamento.

Desventajas

- Parques de equipos heterogéneos, inconexos y de difícil gestión


desde el punto de vista global de la empresa
- Bases de Datos repetidas que afectan la integridad y veracidad de
los datos.
CONCEPTOS DE DATO E INFORMACIÓN
DATO: Característica, atributo o representación de hechos que
por sí solos no transmiten conocimientos.
INFORMACIÓN: Conjuntos de datos ordenados lógicamente que tiene
significado (brindan conocimiento) para quien la requiere.

Carlos Juárez
29
Datos 62
1,69
8
3
Historia Médica
Información
Carlos
Paciente:
Juárez
Edad: 29 años

Peso: 62 kilos

Estatura: 1,61 Centímetros

Kilos a perder: 8 Kilos


Meta: 3 Meses
Principales características de la información
En general la información tiene una estructura interna y puede ser calificada según
varias características:
Significado (semántica): Esto se refiere a qué reglas debe seguir el individuo o el
sistema experto para modificar sus expectativas futuras sobre cada posible alternativa.
Importancia (relativa al receptor): La importancia de la información para un receptor,
se referirá a en qué grado cambia la actitud o la conducta de los individuos.
Vigencia (en la dimensión espacio-tiempo): En la práctica la vigencia de una
información es difícil de evaluar, ya que en general acceder a una información no
permite conocer de inmediato si dicha información tiene o no vigencia.
Validez (relativa al emisor): ¿El emisor es fiable o puede proporcionar información no
válida (falsa)? Esto tiene que ver si los indicios deben ser considerados en la revaluación
de expectativas o deben ser ignorados por no ser indicios fiables.
Valor: ¿Qué utilidad tiene para el destinatario?
Estructura de la Información
Dos de los aspectos más importantes que se presentan en Informática,
relacionados con la información.
❖ es cómo representarla.
❖ cómo materializarla o registrarla físicamente.
En la representación interior de las computadoras, se consideran cuatro tipos de
información: textos, datos numéricos, sonidos e imágenes. Cada uno de ellos
presenta características diferentes.
El objetivo es comprender los procesos que transforman la información externa a
la computadora en patrones de bits fácilmente almacenables y procesables por
los elementos internos de la misma. La computadora opera en binario debido a
que sus componentes físicos, pueden representar solamente dos estados de
condición: apagado/prendido, abierto/cerrado, magnetizado/no magnetizado,
etc. Estados de condición a los que se les asigna el valor 1 ó 0.
Estructura de datos y algoritmos
Una estructura de datos es una forma particular de organizar datos en una
computadora para que pueda ser utilizado de manera eficiente. Diferentes tipos
de estructuras de datos son adecuados para diferentes tipos de aplicaciones, y
algunas son altamente especializadas para tareas específicas.
Estructura de datos
Tipo de dato : Es un conjunto o colección de valores que puede tomar: Real, Char,
Booleano, etc.

Tipo de dato Abstracto : Es un tipo de dato definido de forma única mediante un tipo y un
conjunto dado de operaciones definidas sobre ese tipo.
Ej:
TD : Booleano { true, false}
TDA:{true, false} + {AND, OR, NOT}

TD: Entero ( - ∞ ,0 , +∞ ) conjunto de Valores


TDA: Entero ( - ∞ , 0 , + ∞ ) + Operaciones (+, - ,*, √)
Estructura de dato : Es la implementación física de un tipo abstracto de
dato.

Registro : Es un conjunto de datos Heterogéneo, y a cada uno de sus


elementos se los denomina campo.

EJ:
Legajo Apellido y Nombre Domicilio DNI Día Mes Año
Puntero ( Variable puntero, referencia, enlace, apuntador)
Es un tipo de dato simple cuyo valor es la dirección de otra variable de otro tipo
denominada variable referencial. Esta variable referencial se crea en tiempo de
ejecución.

Ej: Variable de tipo puntero P en dirección 1000 y apunta a 1A00

1000 P
1A00
Dirección 1A00
López Mario
Dato
P Contiene una dirección de memoria Variable referencial dinámica
New devuelve un espacio de memoria, por ejemplo New(x) donde X es
variable puntero.
Con las variables puntero puedo utilizar los operadores de asignación y los de
comparación e igualdad.

Ej:
q=P P 2A1A V. Referencial

q 2A1A

Donde P y q son variables punteros que comparten las misma dirección de


memoria.
Ej:
P 1000
1A00

1A00
q 2100
Juan
27A0

27A0
t 10A0 Carla
1A00

TDA Puntero= se puede definir como un tipo de dato simple cuyo valor es una
dirección de memoria y sus operaciones son la asignación y comparación de
puntero.
Pila
Es una estructura lineal a cuyos datos se los puede acceder, insertar, eliminar
por un solo extremo, denominada tope o cima (TOP).
Se utiliza la estructura llamada LIFO (Last Input Firts output)
“El ultimo en entrar es el primero en salir”
Ej:
Insertar

abcd “ Es secuencial el acceso, no es


Tope Eliminar
d aleatorio”
d cba
c
b
a
Operaciones básicas para el tipo de dato pila:
❖ Insertar (insertar un elemento a la pila)
❖ Eliminar (eliminar un elemento de la pila)
Otras operaciones :
Crear pila (darle existencia)
Pila Vacía (No puedo Eliminar si la pila está vacía )
Pila llena (No puedo Insertar si la pila está llena )

Implementación Estática Usamos como recipiente un Arreglo

Pila
Implementación Dinámica Usamos las Listas encadenadas (LSE)
Diagramas: Implementación estática
Crear pila()

Tope = 0

Pila vacía () Pila llena ()

Tope=0 Tope=Max
Pila vacía= false Pila vacía= True Pila llena= false Pila llena= True
Insertar ( Elem) Eliminar (P ,Tope)

!Pila vacía()
!Pila llena()
H=P(Tope)
Tope=Tope + 1 “Error pila
“Error pila Vacía”
llena” Tope=Tope -1
P(Tope) = Elem

Retornar H
Diagramas: Implementación Dinámicamente

Pila vacía ()

Tope=null
Pila vacía= false Pila vacía= True
Eliminar ()

X=null
Insertar (elem)
x =new Nodo()

!Pila vacía() x.dato= elem


X=tope
“Error pila
vacía” x.ps= tope
Tope= tope.ps
Tope=x
Retornar X
Cola
Es una estructura lineal, en las que los datos entran por la parte de atrás y salen
por la de adelante. Una cola es una estructura en la que el primer dato que entra ,
es el primer dato en salir.
Se utiliza la estructura llamada FIFO (firts input firts output )
“primero en entrar primero en salir”.

FRONT= F (frente) REAR= R(fondo)

Sale A B c Ingresa
ABC ABC
Operaciones básicas para el tipo de dato Cola:
❖ Insertar (insertar un elemento a la Cola)
❖ Eliminar (eliminar un elemento de la Cola)
Otras operaciones :
Crear Cola (darle existencia)
Cola Vacía (No puedo Eliminar si la Cola está vacía )
Cola llena (No puedo Insertar si la Cola está llena )

Implementación Estática Usamos como recipiente un Arreglo

Cola
Implementación Dinámica Usamos las Listas encadenadas (LSE)
Diagramas: Implementación estática
Crear Cola()

F=0

R=0

Cola vacía () Cola llena ()

F=R R =Max
cola vacía= false Cola Vacía= True cola vacía= false Cola vacía= True
Insertar ( Q, Elem) Eliminar (Q,x)

!Cola vacía()
!Cola llena()
X=Q(F+1)
R=R + 1 “Error Cola
“Error COLA Vacía”
llena” F= F + 1
Q(R) = Elem

Retornar X
Diagramas: Implementación Dinámicamente

Cola vacía ()

Q=null
F=null
Cola vacía= false Cola vacía= True
Insertar () Eliminar ()
X=New Nodo()

!Cola vacía()
X=F
!Cola vacía() Error cola
R=X vacia
R.Ps=X F=F.Ps

R=X F=R
Retorna X
Listas
Un lista lineal es una estructura de datos formada por un conjunto de
elementos ordenados, donde el numero de elemento puede variar.
Ej:
La lista A puede estar formado por: A= A1, A2, A3, ………An
Si n=0 La lista esta vacía. “Lista nula”

75 28
L =10 B 40 D
40
A 75 C 28
Una lista Encadenada:
Esta formado por elementos llamados nodos, que es una porción de memoria.
Donde cada uno de esos nodos está formado como mínimo por dos campo, un
campo llamado información que puede ser de cualquier tipo y un campo
llamado puntero.
Nodo

“ Lista encadenada el orden lógico no


coincide
Info con el Ps
orden físico.”

El orden físico no coincide por que depende de los espacios libres encontrados.
Los nodos están distribuidos en la memoria en diferentes partes pero
enlazados.
Ej:

1700 L

4300
2815 3A0A 2100
4300

Carlos 2815 Darío 3A0A Martin 2100 Raúl Null


Importante!!!
• El ultimo nodo de la lista en el campo puntero siguiente debe tener una
referencia nula.
• La lista vacía es una lista que no tiene elementos y se especifica :L =Null;
donde L es la variable puntero.
• En la lista los elementos tienen un único sucesor y un único antecesor,
excepto el 1° y el ultimo elemento.
• El campo puntero me dice cual es o donde esta el elemento síguete, no se
puede acceder aleatoriamente ala lista.
• Operaciones básicas
Crear ()
Insertar()
Eliminar()
creando la lista L= null le damos una existencia física a la lista “lista
vacía. ”
Crear Lista ()

L = Null
false True
Insertar lista vacía ()

L = Null X=A100
A100
New(x)
Carlos Null
Info(x)=elem
Ps(x)=Null
L=x
Insertar primero()

P=L

New(x)
Info(x)=elem
Ps(x)= L
L=x

1700
L =X= 4300
2815 3A0A
X=190A 4300

Aldo 4300 Carlos 2815 Darío 3A0A Martin Null


Insertar Medio(P,q,elem)

New(x)
Info(x)=elem
Ps(q)= x
Ps(x)=p

1700
L =X= 4300 q P

0G
4300 2815 3A0A

13
Carlos 2815 Darío 3A0A Martin Null

X=130G

Juan 2815
Insertar Ultimo(P,q,elem)

Ps(P)!= Null

New(x)
Info(x)=elem
Ps(q)= x
Ps(x)=Null P
X=130G
1700
L =X= 4300
q
Juan Null

0G
4300 2815 3A0A

13
Carlos 2815 Darío 3A0A Martin Null
Ej: Eliminación del primer elemnto(P,elem)

P=L

L=Ps(P)

L = 4300 P
4300 2815 3A0A
Carlos 2815 Darío 3A0A Martin Null

L = 2815
Ej: Eliminación en el medio (P,q,elem)

L!=Null

Ps(q)=Ps(p)

L = 4300
q P
4300 2815 3A0A
Carlos 2815 Darío 3A0A Martin Null

3A0A
Ej: Eliminación el Ultimo (P,q,elem)

L!=Null

Ps(q)=Ps(p)

L = 4300 q P

4300 2815 3A0A


Carlos 2815 Darío 3A0A Martin Null

NULL
Estructura de datos – Árboles
Los Árboles son las estructuras de datos mas utilizadas, pero también una de las
mas complejas, Los Árboles se caracterizan por almacenar sus nodos en forma
jerárquica y no en forma lineal como las LISTAS, COLAS, PILAS, etc.
Un árbol de grado N esta formado por nodos con N apuntadores cada uno de
ellos es apuntado por un único nodo, salvo uno, y apunta a un árbol de grado M
denominado sub árbol .
Datos importantes de los Árboles

❖ Se dice que un árbol esta vacío si no contienen ningún nado.


❖ Es una estructura dinámica y recursiva.
❖ Cada nodo tiene un padre excepto la raíz y los nodos q no tienen hijos se
denominan hojas.
❖ A un hijo también se lo denomina descendiente directo y ascendiente
directo es el padre.
❖ La raíz es el único nodo q no tiene ascendiente.
❖ Un nodo q no es hoja ni es raíz se denomina nodo interior o Rama.
Padre

Aristas

Hijos

Fig. 2: La imagen muestra de forma gráfica cuales son los nodos Raíz,
Rama, Hoja
Fig.3: La siguiente imagen muestra de forma gráfica los nodos Padre,
Hijo y Hermanos
Los arboles a demás de los nodos tiene otras propiedades importantes que son
utilizadas en diferente ámbitos los cuales son:
Nivel: Nos referimos como nivel a cada generación dentro del árbol. Por
ejemplo, cuando a un nodo hoja le agregamos un hijo, el nodo hoja pasa a ser
un nodo rama pero a demas el árbol crece una generación por lo que el Árbol
tiene un nivel mas. Cada generación tiene un número de Nivel distinto que las
demás generaciones.
Un árbol vacío tiene 0 niveles
El nivel de la Raíz es 1
El nivel de cada nodo se calculado contando cuantos nodos existen sobre el,
hasta llegar a la raíz + 1, y de forma inversa también se podría, contar cuantos
nodos existes desde la raíz hasta el nodo buscado + 1.
Altura: Es el máximo nivel alcanzado por alguno de sus nodo.
Peso: Es la cantidad de nodos que tiene un árbol.
Grado del nodo: Al numero de descendiente directos del nodo.
Grado del Árbol: Es el mayor de los grados de los nodos.
Grado de A = 2 Grado de A = 3
Grado de F = 0 Grado de M = 0
Sub-Árbol: Conocemos como Sub-Árbol a todo Árbol generado a partir de una
sección determinada del Árbol, Por lo que podemos decir que un Árbol es un
nodo Raíz con N Sub-Árboles.
Árbol n-ario
Los arboles n-arios son aquellos arboles donde el número máximo de hijos por
nodo es de N, en la figura 7 podemos apreciar dos árboles con grado 2 y grado 3,
estos dos arboles también los podemos definir como Árbol n-ario con n = 2 y n=3
respectivamente.
Árboles binarios
Esta estructura se caracteriza por que cada nodo solo puede tener máximo 2
hijo, dicho de otra manera es un Árbol n-ario de Grado 2
Árbol binario lleno: Es aquel que el que todos los nodos tiene cero o 2 hijos con
excepción de la Raíz.

Fig. 10: Podemos apreciar que el árbol de la derecha no esta lleno ya que uno
de sus nodos no cumple con la condición cero o 2 hijos. ya que el nodo C solo
tiene un hijo.
Árbol binario perfecto: Es un Árbol lleno en donde todos las Hojas están en el
mismo Nivel.

Fig. 11: En la imagen podemos apreciar que el árbol de la izquierda tiene todas sus hojas al mismo nivel y que
además esta lleno, lo que lo convierte en un árbol binario perfecto. Sin embargo, del lado derecho podemos
ver que aunque el árbol esta lleno no tiene todas las hojas al mismo nivel lo que hace que no sea un árbol
binario perfecto pero si lleno.
Recorrido de un Árbol Binario
Recorrer un árbol es visitar los nodos del árbol una sola vez. Recorremos un
árbol en 3 formas .
Pre-orden: R I D
• El recorrido inicia en la Raíz y luego se recorre en pre-orden cada unos de los
sub-árboles de izquierda a derecha.
• Esta definición puede ser un poco compleja de entender por lo que mejor les
dejo la siguiente imagen.
Pos-orden: I D R
• Se recorre el pos-orden cada uno de los sub-árboles y al final se recorre la raíz.
Entre-orden:I R D
• Se recorre en in-orden el primer sub-árbol, luego se recorre la raíz y al final se
recorre en in-orden los demás sub-árboles.
Preorden(R) Posorden(R)

R !=null R !=null

Info(R) Posorden(Pi.(R))

Posorden(Pd.(R))
Preorden(Pi.(R))
Entreorden(R) Info(P)
Preorden(Pd.(R))

R !=null

Entreorden(Pi.(R))

Info(R)

Entreorden(Pd.(R))
Entre- orden
Fin…
Gracias por su atención!!!

También podría gustarte