tete

Páginas: 7 (1697 palabras) Publicado: 11 de junio de 2013
Estructuras dinámicas
Las estructuras dinámicas de datos son estructuras que cuya dimensión puede crecer o disminuir durante la ejecución del programa. Una estructura dinámica de datos es una colección de elementos llamados nodos. Al contrario que un array, que contiene espacio para almacenar un número fijo de elementos, una estructura dinámica de datos se amplía y contrae durante la ejecucióndel programa.
Lasestructuras dinámicas de datos se pueden dividir en dos grandes grupos:
Lineales:listasenlazadas, pilas, colas
Nolineales: árboles , grafos
Las estructuras dinámicas de datos son de gran utilidad para almacenar datos del mundo real, que están cambiando constantemente. Por ejemplo si tenemos almacenados en un array los datos de los alumnos de un curso, los cuales estanordenados de acuerdo al promedio, para insertar un nuevo alumno seria necesario correr cada elemento un espacio: Si en su lugar se utilizara una estructura dinámica de datos, los nuevos datos del alumno se pueden insertar fácilmente.
Estructuras Dinámicas de datos. Las estructuras dinámicas de datos son estructuras que crecen a medida que ejecuta un programa. Una estructura dinámica de datos es unacolección de elementos – llamadas nodos - que son normalmente registros. Al contrario de un arreglo que contiene espacio para almacenar un número fijo de elementos, una estructura dinámica de datos se amplía y contrae durante la ejecución del programa, basada en los registros de almacenamiento de datos del programa.

Punteros
Hemos visto ya cómo las variables son las células de memoria a las quepodemos tener acceso por un identificador. Pero estas variables se guardan en lugares concretos de la memoria de la computadora. Para nuestros programas, la memoria de la computadora es solamente una sucesión de las células de 1 octeto (la talla mínima para un dato), cada una con una dirección única.}
La memoria de computadora puede ser comparada con una calle en una ciudad. En una calle todas lascasas se numeran consecutivamente con un identificador único tal que si hablamos del número 27 de la calle Córdova, podremos encontrar el lugar sin pérdida, puesto que debe haber solamente una casa con ese número y, además, nosotros sabemos que la casa estará entre las casas 26 y 28.
Una declaración de puntero consiste en un tipo base, un * y el nombre de la variable.
La forma general dedeclaración de una variable puntero es:
Tipo *nomb_var;
Donde:
Tipo: cualquier tipo valido ,ya sea primitivo o definido por el usuario
nomb_var: es el nombre de la variable de tipo apuntador.
Los operadores de punteros
Existen dos operadores especiales de punteros: & y *.
El & devuelve la dirección de memoria de su operando. Por ejemplo:
m=&cuenta;
pone en m la dirección de memoria de la variablecuenta. Esta dirección es la posición interna de la variable en la computadora. La dirección no tiene nada que ver con el valor de cuenta. Se puede pensar en el operador & como devolviendo "la dirección de".
El segundo operador de punteros, *, es el complemento de &. Devuelve el valor de la variable localizada en la dirección que sigue. Por ejemplo, si m contiene la dirección de memoria de lavariable cuenta, entonces:
q=*m;
pone el valor de cuenta en q. Se puede pensar en * como "en la dirección".
El siguiente programa ilustra un ejemplo:
#include
main()
{int cuenta, q;
int *m;
cuenta=100;
m=&cuenta; //m recibe la dirección de cuenta
q=*m; //a q se le asigna el valor de cuenta
indirectamente a través de m
print("%d,q") //imprime 100
}
Punteros estáticos
Definamos unpuntero a un entero y una variable entera como sigue:
Int *p1;
Int valor1;
Con estas definiciones es posible hacer las siguientes asignaciones estáticas:
p1= *valor1;
*p1=25;
El apuntador p1 se define como un apuntador a un entero. La variable valor2 se define como una variable entera. La primera asignación hace que p1 apunte a la variable valor1, la segunda asignación almacena en memoria el...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • tete
  • Tete
  • Teto
  • TETE
  • teta
  • tete
  • Tete
  • teta

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS