Estructuras dinámicas en C++

28 09 2009

No sé a cuantos de ustedes les ha pasado que tal vez ocupan usar alguna estructura dinámica en C++, y a diferencia de Java o C#, en donde esto se vuelve un poco más sencillo, en C++ se vuelven locos por encontrar una alternativa útil. Bueno hace poco junto con un compañero de la universidad tuvimos que programar los conocidos algoritmos de Mochila y Número de Empleados en C++. Dado que no sabíamos los datos con los que íbamos a trabajar puesto que la idea era que el usuario fuera el que proporcionará esos datos, era obvio que ocupabamos una estructura dinámica en C++ que nos ayudará en dicha tarea. Al inicio utilizamos un TDA (tipo de dato abstracto) proporcionado por el profesor del curso, sin embargo estas terminaron siendo un dolor de cabeza: luego cuando decidimos usar arreglos notamos que C++ al definir un arreglo como arreglo[][], empezaba a dar ciertos problemas en la memoria, por lo que los datos no podian ser bien manejados. Luego de bastante investigación dimos con el uso de vectores dinámicos. Estos se definen de la siguiente forma:

def

De esta forma conseguimos que de acuerdo a los datos del usuario en tiempo de ejecución pudieramos indicar el tamaño del vector, por ejemplo dentro del constructor de la clase, de esta manera:

set

En donde _mayor, _menor y _semanas son otros datos de tipo int dados por el usuario, y que sirven para indicar el tamaño del vector. Igual el tamaño del vector puede ser cambiado en cualquier momento de la ejecución, según la conveniencia.

En fin esta es una excelente opción si necesitan usar una estructura dinámica en C++. A continuación les dejo un link para descargar el programa con los algoritmos de Número de Empleados y Mochila que utilizan estos vectores que he comentado, por si quieren consultar:


http://rapidshare.com/files/285919081/Estructura_Din__mica.rar

Saludos


Acciones

Información

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s




A %d blogueros les gusta esto: