jueves, 31 de marzo de 2011

MEMORIA ESTATICA Y DINAMICA



 
Ø  Introducción.-
            
    Memoria: es un espacio lógico que sirve  para  guardar  información
                Estática: estática en programación significa  que no se modifica 
               Dinámica: significa que puede modificarse permanentemente
Ø  Memoria estática.- memoria estática es cuando no puede modificarse en tiempo de ejecución.
  Consideraciones:
·         Errores en tiempo de ejecución, índice fuera de rango
·         Se debe conocer con anticipación el tamaño de la estructura 
                           Ejemplo:  V[3];   M[2][2]  ;  C[3][5][8] ;     
Se guarda en memoria adyacente, es  decir uno al lado de otro 
              Ventajas.-
·         Tiene una lógica fácil
·         Optima para resolver problemas pequeños y  medianos    


   Desventajas.-
·          No se puede modificar el tamaño de  la estructura en tiempo de ejecución   
·          No es optima para grandes cantidades de datos
·          Desperdicio de memoria cuando no se ocupa la totalidad del tamaño de la estructura

Ø  Memoria dinámica.-    la memoria dinámica si puede modificarse en tiempo de  ejecución,           

se      puede  aumentar o reducir  el tamaño de la estructura sin ningún problema
   
  Consideraciones.-
 ·         Manejo transparente del tamaño de la estructura
 ·         No  Se guarda necesariamente en memoria adyacente
 ·         Se guarda donde encuentra espacio
    Ventajas.-
                ·         El tamaño de la estructura no interfiere en la lógica del programa
                ·         No desperdicia  espacio de  memoria
                ·         Se puede modificar el tamaño de la estructura sin ninguna dificultad
    Desventajas.-
             ·No se conoce con anticipación el espacio que memoria que se va ocupar

Ø  Tipos abstractos de datos   ó  (TDA/ ADT).-
   
·    Tipo: es una convención  para  nombrar a un determinado conjunto en programación                                    
        Abstracto: características de una  clase
        ·Dato: es una unidad de información

Ø  Tipo abstracto de datos.- es una unidad que encapsula características y archivos 
        Tipos abstractos de datos = atributos + operaciones
        Es un conjunto de datos      
        Ejemplo:
·       Tipo abstracto  de dato  entero: conjunto de datos
                      [0, 1, 2, 3, 4, 5, 6……..n]
   
       Operaciones.-
-     asignaciones
-     incrementos
-     decrementos
-    operaciones aritméticas
·       Tipo abstracto de  datos de dato   estudiante: conjunto de datos
               -RU        [numero]
               -Nombre [texto]
               -Edad      [numero]

             Operaciones.-
                  -  Ver Nombre ( )
                  -  Ver Edad ( )
                  -  Modificar datos ( )
Tipo abstracto de datos conjunto: conjunto de datos.
          
              - Set [numero, texto]
           Operaciones.-
                 -Unión
                 -Intersección
                 -Comparación
   
Ø  Estructuras estáticas.-
               Arreglos:
ü  Unidimensionales  à  vectores
ü   Bidimensionales   à  matrices
ü  Multidimensionales à cubos
                                                                     Etc.
 Ø   estructura estática

Arreglo es una estructura de datos estática lineal de una dimensión.
-          El tamaño es conocido
-          Secuencia de elemento
-          Se encuentra en memoria adyacente
-          Son del mismo tipo
-          Empiezan en la posición 0 “cero”
-          Se acede en los elementos a atraves de un medio Ej.

int [] Arreglo //Ojo esto es solo la declaración.
int [] Arreglo n= new int [10]//esto es la creación del Arreglo

vector V = new vector (5) ;//crea el vector de 5 elementos
vector V1= new vector1();//crea el vector V1 con 10 elementos
vector V2 = new vector2(8,5);//crea el vector de 2 con 8 elementos con 5 rango de .      .          intersecciones adicionales permitidos