INTRODUCCION
ESTRUCTURA
ESTRUCTURA DE DATOS
Estructura de Datos Estáticas:
Son aquellas en las que el tamaño ocupado en memoria se define antes de que
el programa se ejecute y no puede modificarse dicho tamaño durante la ejecución
del programa.
Estas estructuras están implementadas en casi todos los lenguajes.
Su principal característica es que ocupan solo una casilla de memoria, por
lo tanto una variable simple hace referencia a un único valor a la vez,
dentro de este grupo de datos se encuentra:
a)Enteros
b)Reales
c)Caracteres
d)Boléanos
e)Enumerados
f)Subrangos
Nota:Los últimos no existen en algunos lenguajes de programación.
Estructura de Datos Dinamicas:
No tienen las limitaciones o restricciones en el tamaño de memoria ocupada
que son propias de las estructuras estáticas.
Mediante el uso de un tipo de datos especifico, denominado puntero, es
posible construir estructuras de datos dinámicas que no son soportadas por la
mayoría de los lenguajes, pero que en aquellos que si tienen estas
características ofrecen soluciones eficaces y efectivas en la solución de
problemas complejos.
Se caracteriza por el hecho de que con un nombre se hace referencia a un
grupo de casillas de memoria.
Es decir un dato estructurado tiene varios componentes.
CLASIFICACIÓN DE LAS ESTRUCTURAS DE DATOS:
ESTRUCTURAS DE DATOS ESTÁTICAS
1.- Simples
a) Boolean
b) Char
c) Integer
d) Real
2.- Compuestas
a) Arreglos
b) Conjuntos
c) Strings
d) Registros
e) Archivos
ESTRUCTURA DE DATOS DINÁMICAS
1.- Lineales
a) Pila
b) Cola
c) Lista
2.- No lineales
a) Árboles
b) Grafos
Una estructura de Datos es una colección de datos que pueden ser
caracterizados por su organización y las operaciones que se definen en ella.
Para ver el gráfico seleccione la opción
"Descargar" del menú superior
Los tipos de datos simples pueden ser
organizados en diferentes estructuras de datos: estáticas y dinámicas
Un diagrama conceptual es un diagrama de estructura estática que representa
conceptos del mundo real y las relaciones entre ellos.
Se centra en las relaciones y los atributos en vez de los métodos u ayuda
al usuario a entender la terminología del área de dominio para la que está
desarrollada un sistema.
Como conceptual de los diagramas, diagramas de clases son diagramas de
estructuras estáticas que descomponen un sistema software en sus partes. Sin
embargo, en un diagrama de clase, los elementos son clases que representan
entidades de software totalmente definidas en vez de objetos que representan
conceptos del mundo real.
Además de atributos y asociaciones, un diagrama de clases también
especifica operaciones, métodos, interfaces y dependencias.
HISTORIA
DE LA ESTRUCTURA ESTÁTICA:
La estática es la rama de la mecánica clásica que analiza las cargas
(fuerza, par/momento) y estudia el equilibrio estático, es decir, en un estado
en el que las posiciones relativas de los subsistemas no varían con el tiempo.
La primera ley de NEWTON implica que la fuerza neta y el par neto
(también conocido como MOMENTO DE FUERZA) de cada organismo en el sistema es
igual a cero. De esta limitación puede derivarse cantidades como la carga o la
presión. La red de fuerzas de igual a cero se conoce como la primera condición
de equilibrio, y el par neto igual a cero se conoce como la segunda condición
de equilibrio. Un cuerpo está en reposo cuando su velocidad es igual a cero.
El equilibrio puede ser de tras clases:
1. ESTABLE: péndulo la plomada y una campana.
2. INESTABLE: un bastón sobre su punta.
3. INDIFERENTE: Una rueda en su eje.
Si el centro de gravedad está por debajo del punto de suspensión es
inestable.
El punto de aplicación de la resultante fuerza de gravedad que la tierra
ejerce sobre todas y cada una de las partículas se encuentra constituidas por
un cuerpo se llama centro de gravedad.
Momento de una fuerza se llama momento de un fuerza con respecto a un eje
de rotación al producto resultantes de multiplicar la intensidad de la fuerza
por la distancia que existe entre la recta de acción de la fuerza y el eje de
rotación. A esta distancia se le llama brazo de la fuerza.
QUE
ES UNA ESTRUCTURA ESTATICA?
Son aquellas en las que el tamaño ocupado en memoria se define antes de que
el programa se ejecute y no pueda modificarse dicho tamaño durante la
ejecución del programa, la estática abarca el estudio del equilibrio
tanto del conjunto como de sus partes constituyentes, incluyendo las porciones
elementales de materia.
Estas estructuras están implementadas en casi todos los lenguajes, uno de
los principales objetivos de la estática es la obtención de ESFUERZOS CORTANTES,
FUERZA NORMAL, FUERZA D TORCION Y MOMENTO FLECTOR a lo largo de una
pieza, que puede ser desde una viga de un puente o los pilares de un
rascacielos.
Su principal característica es que ocupan solo una casilla de memoria , por
lo tanto una variable simple hace referencia a un único valor a la vez dentro
de este grupo de datos se encuentra :enteros ,reales, caracteres ,boleados
,enumerados y subrangos (los últimos no existen en algunos lenguajes de
programación).
Es aquella que dura la ejecución de un programa su valor no cambia.
Por ejemplo:
Listas,
vectores; matrices; pilas; colas y listas enlazadas.
El tamaño ocupado en la memoria se define ante de que el programa se
ejecute y no puede modificarse dicho tamaño. Es decir su valor no cambia a la
hora de la ejecución.
ESTRUCTURA
DINAMICA
No tiene las limitaciones o restricciones en el tamaño de
memoria ocupada que son propias de las estructuras estáticas.
Mediante el uso de un tipo de datos especifico, denominado puntero, es
posible construir estructuras de datos dinámicas que no son soportadas por la
mayoría de los lenguajes, pero en aquellos que si tienen estas características
ofrecen soluciones eficaces y efectivas en la solución de problemas complejos.

Es aquella que durante la ejecución de un programa su valor puede cambiar.
En la que no tiene limitaciones en el tamaño de la memoria. Esta estructura
su valor puede cambiar durante la ejecución de un programa.
EJEMPLO Nº1
Todos los segmentos de recta dirigidos que se muestran en esta figura son
equivalentes.
Cualquiera de ellos es una representación gráfica del vector. El segmento
dirigido en rojo es la representación convencional de tal vector
Ejercicio, utilizando tipos simples de
datos
Se tienen las calificaciones de un grupo
de 50 alumnos.
Se necesita saber cuántos alumnos tienen
una calificación superior al promedio del grupo.
Algoritmo 1
DOBLE LECTURA
1. hacer
AC = 0 e I = 1
Leer calificación I (C)
Hacer AC = AC + C e I = I+1
2. Repetir
mientras (I<= 50)
3. {Fin
del ciclo del paso 2}
{Como se necesita decir cuántos alumnos
obtuvieron una calificación superior al promedio, se deberá volver a leer las
50 calificaciones para poder comparar cada una de ellas con el promedio}
Hacer CONT = 0 e I = 1
4. Hacer
PROM = AC / 50
Leer calificación I (C)
1. Si
C> PROM entonces
Hacer I = I + 1
5. Repetir
mientras (I<=50)
6. {Fin
del ciclo del paso 5}
7. Escribir
CONT
Algoritmo 2.
MUCHAS VARIABLES
{Este algoritmo resuelve el problema
planteado en el ejemplo 1, utilizando múltiples variables}
{I y CONT son variables de tipo entero.
AC, PROM y C son variables de tipo real}
1. {Las
calificaciones correspondientes a los 50 alumnos}
Hacer AC = C1 + C2 + C3 +.....+C50
PROM = AC / 50 y CONT = 0
2. Leer
C1, C2, C3,....C50
Hacer CONT = CONT + 1
3. Si
C1 > PROM entonces
4. {Fin
del condicional del paso 2}
5. Si
C2> PROM entonces
6. {Fin
del condicional del paso 4}
...
100. Hacer CONT = CONT + 1
101. Si C50 > PROM entonces
102. {Fin del condicional del paso 100}
103. Escribir CONT
En la solución planteada en el algoritmo
1, el usuario del algoritmo debe ingresar dos veces el conjunto de datos.
Esto resulta totalmente molesto y además
ineficiente.
En la solución planteada en el algoritmo
2, se manejan 50 variables en memoria.
Esta solución presenta el inconveniente
de que el manejo de las variables puede tornarse incontrolable, si el número de
las mismas crece considerablemente.
Además
algunos pasos especificados se repiten ya que no pueden generalizarse.