Monografias.com > Computación > Software
Descargar Imprimir Comentar Ver trabajos relacionados

Creación y Manipulación de Filas con Punteros por el Método Circular Doblemente Ligado en Microsoft Visual C++ 2005




Enviado por jaimemontoya



Partes: 1, 2

    1. Primeros
      Pasos
    2. Funcionamiento del
      Programa
    3. Ejemplo del
      Programa en Ejecución
    4. Código
      del Programa
    5. Código
      del Botón Crear Fila
    6. Código
      del Botón Agregar Nodo al Final
    7. Código
      del Botón Anterior
    8. Código
      del Botón Siguiente
    9. Código
      del Botón Eliminar Primer Nodo
    10. Código
      del Botón Agregar Nodo en la Posición
      k
    11. Código
      del Botón Eliminar Nodo en la Posición
      k
    12. Código
      del Botón Ir al Primer Nodo de Todos
    13. Código
      del Botón Ir al Último Nodo de
      Todos
    14. Código
      del Evento Form1_Load

    Primeros Pasos

    Primeramente, este programa ha sido
    creado en Microsoft
    Visual C++ 2005. Los primeros pasos para crearlo son: Abrir
    Microsoft Visual Studio 2005; hacer clic en el menú
    Archivo y
    luego en Nuevo Proyecto…;
    luego en Tipos de Proyecto, en otros lenguajes, seleccionar
    Visual C++;
    después de eso en Plantillas seleccionar Aplicación
    de Windows Forms;
    finalmente en ponerle el nombre y la ubicación deseada al
    proyecto y hacer clic en Aceptar.

    Funcionamiento del Programa

    Este programa permite crear filas para posteriormente
    agregar o eliminar nodos a la fila creada. Los nodos pueden ser
    agregados al final de la fila o en una posición cualquiera
    (llamada posición "k") determinada por el usuario.
    Igualmente el programa permite eliminar el primer nodo de la fila
    así como también eliminar un nodo cualquiera
    ubicado en la posición "k", que será también
    determinada por el usuario.

    Mediante los botones de navegación el usuario
    podrá desplazarse al primero de todos los nodos, a un nodo
    anterior, a un nodo siguiente o al último de todos los
    nodos.

    Es importante notar que se está trabajando con el
    método o
    modelo
    Circular Doblemente Ligado. Esto significa que el primer nodo de
    la fila tiene como nodo anterior el último nodo de la fila
    y el último nodo de la fila tiene como nodo siguiente el
    primer nodo de la fila. El primer nodo de la fila es conocido
    como "header". En este modelo cada nodo apunta hacia uno nodo
    siguiente así como también hacia un nodo anterior.
    Por ejemplo: Supongamos que tenemos una fila que tiene 4 nodos,
    los punteros funcionarán entonces de la siguiente
    manera:

    El nodo 1 (que es el "header", primer nodo de todos o
    primer nodo de la fila) apunta hacia el nodo 2 como su nodo
    siguiente y hacia el nodo 4 (que es el último nodo de
    todos o el último nodo de la fila) como su nodo anterior.
    El nodo 2 apunta hacia el nodo 3 como su nodo siguiente y hacia
    el nodo 1 como su nodo anterior. El nodo 3 apunta hacia el nodo 4
    como su nodo siguiente y hacia el nodo 2 como su nodo anterior.
    Finalmente el nodo 4 apunta hacia el nodo 1 como su nodo
    siguiente y hacia el nodo 3 como su nodo anterior. Si el usuario
    decide que la posición "k" es la posición 3, y
    luego hace clic en el botón "Agregar Nodo en la
    Posición k", entonces el nodo 3 será el nuevo
    recién creado/agregado y el nodo que era el 3
    pasará a ser el 4, de modo que se correrá un
    espacio hacia adelante. Por supuesto que los apuntadores
    deberán tenerse en cuenta también, de modo que el
    nodo recién agregado en la posición 3 deberá
    apuntar hacia el nodo que ahora ocupa la posición 4 como
    su nodo siguiente y hacia el nodo que está en la
    posición 2 como su nodo anterior. Igualmente el nodo 2
    tendrá que dejar de apuntar hacia el nodo siguiente al que
    estaba apuntando y ahora apuntará al nuevo nodo
    recién introducido en la posición 3 como su nodo
    siguiente.

    En el caso que el usuario decida agregar un nodo en la
    posición 1, significa que el "header" será
    desplazado a la posición 2 y el nuevo "header" será
    el nodo recién creado/agregado. Lo importante es siempre
    tener cuidado de enlazar los apuntadores correctamente cada vez
    que se agrega o elimina un nodo, teniendo especial cuidado de
    siempre tener en cuenta qué nodo es nuestro "header" o
    primer nodo de la fila. Cuando se elimine el "header", el nodo de
    la posición 2 de la fila pasará a ser el nuevo
    "header", de modo que primer se desconecta el "header", luego se
    hacen las conexiones de los apuntadores correspondientes y
    entonces se puede eliminar el primer nodo de la fila, luego de
    haber asignado al nodo 2 como nuestro nuevo "header".

    Téngase presente que se está trabajando
    con estructuras,
    esto significa que un nodo debe entenderse para este caso como
    una estructura de
    datos, es
    decir que un nodo contiene tres campos: Nombre y Apellidos, Edad
    y Salario. Cada uno
    de los nodos contendrá valores en
    esos tres campos, pues se está utilizando una estructura
    personalizada que se creó antes de darle código
    a cada botón.

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter