Resumen
La realización de la página web con un menú que luego puede desplegar en otras páginas, todas las animaciones sobre listas enlazadas como fue realizado a través de código HTML5, lo cual significa que puede ser abierto por cualquier dispositivo con pantalla de diferentes dimensiones. Además de esto, las animaciones se realizaron desplegadas en cada uno de los links del menú para crear una lista, mostrar una lista, agregar un nodo a la cabecera, agregar un nodo al medio, agregar un nodo al final; también los métodos de quitar un nodo del inicio, del centro y del final de la lista.
Introducción
La página web es en esencia una tarjeta de presentación digital, ya sea para empresas, organizaciones, o personas, así como una tarjeta de presentación de ideas y de informaciones y de teorías.
Asimismo, la nueva tendencia orienta a que las páginas web no sean sólo atractivas para los internautas, sino también preparadas para los buscadores a través del código fuente.
Si hablamos de posicionamiento web, una página web es la base para optimizar todo un sitio web el cual es un conjunto de páginas web.
Página Web
Página web o página electrónica, es el nombre de un documento o información electrónica capaz de contener texto, sonido, vídeo, programas, enlaces, imágenes, y muchas otras cosas, adaptada para la llamada World Wide Web, y que puede ser accedida mediante un navegador. Esta información se encuentra generalmente en formato HTML o XHTML, y puede proporcionar navegación (acceso) a otras páginas web mediante enlaces de hipertexto. Las páginas web casi siempre incluyen también otros recursos como ser hojas de estilo en cascada, guiones (scripts), imágenes digitales, entre otros.
Las páginas web pueden estar almacenadas en un equipo local o un servidor web remoto. El servidor web puede restringir el acceso únicamente a redes privadas, por ejemplo, en una intranet corporativa, o puede publicar las páginas en la World Wide Web. El acceso a las páginas web es realizado mediante una transferencia desde servidores, utilizando el protocolo de transferencia de hipertexto (HTTP).
2.1 Características de la Página Web
La página web está compuesta principalmente por información (sólo texto y/o módulos multimedia) así como por hiperenlaces; además puede contener o asociar hoja de estilo, datos de estilo para especificar cómo debe visualizarse, y también aplicaciones embebidas para así permitir interactividad.
Las páginas web utilizan un lenguaje de marcado que provee la capacidad de manejar e insertar hiperenlaces, generalmente HTML.
El contenido de la página puede ser predeterminado (página web estática) o generado al momento de visualizarla o solicitarla a un servidor web (página web dinámica). Las páginas dinámicas que se generan al momento de la visualización, se especifican a través de algún lenguaje interpretado, generalmente JavaScript, y la aplicación encargada de visualizar el contenido es la que realmente debe generarlo. Las páginas dinámicas que se generan, al ser solicitadas, son creadas por una aplicación en el servidor web que alberga las mismas.
Con referencia a la estructura de las páginas web, algunos organismos, en especial el W3C, suelen establecer directivas con la intención de normalizar el diseño, y para así facilitar y simplificar la visualización e interpretación del contenido.
Diferentes Páginas Web
Animación flash
La animación Flash es una película o serie de animación creada con Adobe Flash o un programa de animación similar y a menudo se distribuye en el formato de archivo SWF. El término animación Flash no sólo se refiere al formato de archivo, sino a un cierto tipo de movimiento y estilo visual que, en muchos círculos se considera, muy simple. Sin embargo, con docenas de series de televisión animadas en Flash, incontables anuncios de televisión en animación Flash y cortometrajes premiados en línea en circulación, la animación Flash está disfrutando de un renacimiento.
En el año 1990, para la mayoría de los internautas, el ancho de banda era de 56 kbit/s, por lo que muchos artistas de animación Flash emplearon animación limitada o la animación en recorte en la creación de proyectos destinados a su distribución web. Esto permite a los artistas publicar cortos y experiencias interactivas muy por debajo de 1 MB, lo que podría transmitir la animación y audio de alta gama. Como ejemplo podemos mencionar el primer episodio de The Goddamn George Liquor Program emitido en 1999, consistente en sólo 628 KB.
El Flash es capaz de integrar los mapas de bits y otra trama basada en el arte, así como el vídeo. La mayoría de las películas de Flash son creadas usando sólo dibujos basados ??en vectores que a menudo resultan en un aspecto gráfico algo limpio o simple. Algunas características de la mala producción de animaciones Flash son movimientos espasmódicos antinaturales (se pueden ver en los ciclos de caminar y gestos), movimientos de los personajes auto-interpolados, sincronización de labios sin interpolación, y cambios bruscos de frente para ver el perfil.
Las animaciones Flash suelen ser distribuidas a través de la World Wide Web, en cuyo caso se denominan a menudo como los dibujos animados de internet, dibujos animados en línea, o webtoons. Las animaciones Flash en Web pueden ser interactivas y se crean a menudo en una serie. Una animación Flash es distinta de un webcómic, éste es una tira cómica distribuida a través de la Web, y no un dibujo animado, cómo es la animacón Flash. La animación en Flash ahora se enseña en las escuelas de todo el Reino Unido y puede ser tomada como un CGES y Nivel A.
Página Web con menú para animaciones flash
Animación de: Quitar el Primer Nodo
Animación de: Agregar Nodo a Cabecera
Listas enlazadas
4.1 Estructuras Dinámicas de Datos
Las estructuras dinámicas de datos son estructuras que crecen a medida que se ejecuta un programa.
Al contrario de un arreglo que contiene un espacio de memoria determinado para almacenar un número fijo de elementos, asignado al inicio de un programa, una estructura dinámica de datos se amplia y contrae durante la ejecución de un programa según sea la necesidad de agregar o eliminar elementos.
Una estructura dinámica de datos es una colección de elementos llamados nodos que están conectados entre sí por enlaces de apuntador (referencias a objetos). Un nodo (Figura 1) es una estructura de datos que contiene dos campos, un campo que almacena el dato (dato primitivo u objeto) y otro campo denominado enlace que almacena la referencia al próximo nodo.
4.2 Listas Enlazadas
Una lista enlazada (Figura 2) es un conjunto lineal de objetos de una clase llamada Nodo. Una lista enlazada se accesa por medio de una referencia al primer nodo de la lista, generalmente llamado cab.
Los nodos subsiguientes se accesan por medio del campo de enlace que está almacenado en cada nodo. Por convención el enlace del último nodo de la lista se establece a null para marcar el final de la lista. En una lista enlazada, los datos se almacenan dinámicamente y cada nodo se crea conforme se necesita. Las listas de datos pueden almacenarse en arreglos, pero las listas enlazadas proporcionan varias ventajas. Una lista enlazada es adecuada cuando es impredecible el número de datos a almacenar en la estructura.
Las listas enlazadas pueden mantenerse de forma ordenada simplemente insertando cada nuevo dato en el punto adecuado de la lista sin necesidad de mover los elementos existentes en la lista. Las listas enlazadas tienen la desventaja que por cada dato de la lista requiere de un espacio de memoria para el enlace al próximo dato, adicionalmente la asignación dinámica de memoria incurre en la sobrecarga de llamadas a función a diferencia del acceso a un elemento de un arreglo, que se realiza directamente calculando la posición del elemento con respecto a la dirección de inicio del arreglo. 4.2.1 Clasificación.
Las listas enlazadas se clasifican en:
Listas enlazadas simples, doblemente enlazadas, circulares simplemente enlazadas y circulares doblemente enlazadas.
4.2.2 Operaciones Básicas en una Lista Enlazada:
Insertar un nodo en la cabecera de la lista
Se crea un nuevo nodo con el enlace apuntando al elemento apuntado por cab (el primero de la lista). A cab se le asigna la referencia al nuevo nodo creado.
4.2.3 Determinar la Referencia al Último Nodo de la Lista.
aux Se utiliza para recorrer la lista y ultimo Se utiliza para guardar la referencia al nodo anterior al
referenciado por aux. Retorna null si la lista esta vacia.
4.2.4 Insertar un Nuevo Nodo al Final de la Lista.
Si la lista está vacía inserta el dato d en la cabecera de la lista.
Sino crea un nuevo nodo con enlace a null y lo enlaza con el último nodo de la lista.
4.2.5 Accesar un Dato Almacenado en un Nodo Específico.
Si la lista está vacía lanza una excepción.
aux Se utiliza para recorrer la lista e ir accesando cada campo dato para compararlo con d.
Sino encuentra el dato d, retorna null.
ƒ4.2.6 Eliminar un Nodo Existente que Contiene una Información en Particular.
Si la lista está vacía lanza una excepción.
a Se utiliza para almacenar la referencia al nodo anterior y b para almacenar la referencia al nodo que almacena d.
Si d no existe (b == null) no hace nada.
Si encuentra el dato d, determina la referencia al nodo anterior a d, si la referencia al anterior es null significa que d está en el primer nodo de la lista.
ƒ
ƒ4.2.7 Obtener la referencia al nodo anterior a un nodo que almacena un valor d.
Si la lista está vacía lanza una excepción.
aux se utiliza para recorrer la lista y anterior se utiliza para guardar la referencia al nodo anterior al referenciado por aux.
Si d se encuentra en el primer nodo retorna null.
Si d no existe retorna la referencia al último nodo de la lista.
ƒ4.2.8 Este método se puede modificar para que retorne una excepción cuando d no se encuentre en la lista.
De este modo si retorna null, es porque el dato d está en el primer nodo de la lista.
Sino, retorna la referencia del nodo anterior a d. Listas enlazadas 5
4.2.9 Insertar un dato v en una posición anterior a un nodo que almacena un dato d.
a Se utiliza para almacenar la referencia al nodo anterior y b para almacenar la referencia al nodo que almacena d.
Si la lista está vacía, inserta v en la cabecera.
Sino busca determina el valor de b.
Si lo encuentra, determina el valor de a.
Si a==null, es porque d es el primero de la lista, entonces lo inserta en la cabecera.
Sino crea un nuevo nodo y lo enlaza.
Si d no existe no inserta v.
ƒ4.2.10 Insertar un dato d manteniendo la lista ordenada ascendentemente.
Si la lista está vacía inserta d en la cabecera.
Sino determina la posición donde debe insertar d para mantener el orden.
Para ello, determina la referencia al nodo anterior a donde debe
insertar.
Si d es menor que el dato del primer nodo (anterior == null) inserta d en la cabecera.
Sino crea un nuevo nodo con d y lo enlaza.
4.3 Pilas
Una pila (stack) es un tipo especial de una lista enlazada, ya que los nuevos nodos sólo pueden agregarse o eliminarse por la cabecera de la lista, generalmente llamado tope o cima de la pila. Se
caracteriza por ser una estructura LIFO (último en entrar primero en salir, Last Input First Output).
4.3.1 Implementación de una clase Pila
Implementación de una clase Pila
Solo se permite el acceso al elemento ubicado en el tope de la Pila tanto para eliminarlo (pop) como para agregarlo (push).
La referencia al primer Nodo es tope.
4.3.2 Colas
Una cola (queue) es similar a una cola de personas para comprar entradas al cine, la primera persona que está en la cola, es la primera en ser atendida, las nuevas personas que lleguen deben agregarse al final de la cola. En una cola implementada con una lista enlazada, los nodos de una cola se eliminan solamente desde el inicio de la lista y se insertan solamente al final de la lista. Se caracteriza por ser una estructura FIFO (primero en entrar primero en salir, First Input First Output).
Implementación de una clase Cola
Se utilizan dos apuntadores:
primero que referencia el primer nodo de la lista y facilita las operaciones de acceso al primer elemento de la cola.
ultimo que referencia al último nodo de la lista y facilita las operaciones de acceso al último elemento de la cola.
Es muy importante mantener actualizados estos apuntadores, cada
vez que se agregan o extraen elementos de una Cola.
Referencias
http://www.calcifer.org/documentos/librognome/glib-lists-queues.html
http://dptocomp.ing.uc.edu.ve/compAvanzada/lecturas/ResumenListasEnlazadas.pdf
Autor:
Oscar Luis Rojas Murillo