Estructura de datos | Listas

Las listas son estructuras de datos en las cuales podemos guardar elementos de un mismo tipo. Este tipo de estructura permite guardar N numero de elementos ya que no esta definido. existen de dos tipos :

  • Listas simples
  • Listas doblemente enlazadas
Esta vez explicare las listas simples. para entenderlas tienes que conocer como trabajan, en realidad es muy sencillo. un lista consta de un elemento que a su vez contiene un espacio vacio para otro elemento, al momento de crear un nuevo tenemos que indicar que el nuevo ocupara el espacio vacio del primero y asi tendremos unidos estos dos. y asi podemos agregar cuantos elementos nos plazca. mira la imagen:

una vez explicado esto procedamos a la parte del codigo. nuestra estructura en cuanto a clases sera muy simple tenemos que crear una clase nodo o elemento con la que iremos creando nuestros elementos.
con esto podremos ir creando nuevos nodos, explicando que nuestra variable dato es la que guardara nuestro valor y next sera nuestro espacio vacio para poder asignar nuestros nuevos nodos. con nuestro funcion imprimir imprimiremos nuestro dato.
Bien hagamos ahora un menu para poder insertar nodos e imprimirlos. tenemos que crear una nueva clase. esta seria la estructura basica:
Bien con esto podriamos insertar nuevos nodos e imprimirlos. analizando mi codigo les explicare lo que hace. en mi menu mando llamar a insertar en la opcion 1. insertar tiene una condicion if y su else para compara si ya se inicio la lista y o si no. en caso de no estar iniciada pedira el valor para el primer nodo, en caso de que ya este iniciada pedira el valor para el nuevo nodo, para encontrar su espacio asignaremos a un auxiliar el valor de primero para hacer una busqueda en la lista hasta encontrar que el siguiente nodo este vacio para poder ahi ingresar el nuevo.
imprimir tiene la misma logica, asignar a un auxiliar el valor del primero e ir imprimiendo el valor hasta que el siguiente sea un null que significa que esta vacio.
Bueno eso seria todo si tienes alguna duda puedes agregarme a Facebook o directamente aqui pon tu comentario
Anuncios

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 )

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 )

Google+ photo

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

Conectando a %s