Lista doblemente enlazada con Java

Continuando con la implementación de estructuras de datos acá presento una lista doblemente enlazada y el recorrido de sus valores hacia adelante y atrás, su implementación es solo una variación de la lista simple, pero con la particularidad que cada nodo no solo tiene un puntero al siguiente sino también un puntero al anterior, acá el código con la implementación y un link a repl.it para la revisión de la ejecución del siguiente código.


Tabla de desempeño basado en Big O

Algoritmo Tiempo promedio Peor caso
Búsqueda O(n) O(n)
Inserción O(1) O(1)
Eliminación O(1) O(1)

El ejemplo de ejecución en Repl.it https://repl.it/@donpandix/Estructura-Datos

 

El objeto nativo de java se llama LinkedList y su documentación oficial está en https://docs.oracle.com/javase/10/docs/api/java/util/LinkedList.html

Lista Enlazada con Java

Con el propósito de profundizar y/o recordar conocimientos escenciales en lo que refiere a codificación, comenzaré nuevamente a publicar algunas implementaciones de los conceptos estructura de datos y algoritmos, en esta oportunidad presento la implementación de una lista enlazada simple en lenguaje JAVA, ya tenía una implementación de esta estructura de datos realizado con Swift, pero quise realizarla en este JAVA porque es un lenguaje que en lo particular me gusta mucho. sin más les dejo el código.

Acá les dejo un link al proyecto en repl.it si desean analizarlo y ejecutarlo con más detalle https://repl.it/@donpandix/Estructura-Datos

 

Un dato relevante para quienes les gusta conocer más en profundidad las implementaciones, es su desempeño definido por su Big O:

Algoritmo Tiempo promedio Peor caso
Búsqueda O(n) O(n)
Inserción O(1) O(1)
Eliminación O(1) O(1)

 

El objeto nativo de java se llama LinkedList y su documentación oficial está en https://docs.oracle.com/javase/10/docs/api/java/util/LinkedList.html

 

Validación de email con Javascript

La validación de email es una de mis funciones más recorridas y usadas frecuentemente en las aplicaciones que desarrollo, por lo que, esta función en particular, se ha vuelto una de mis herramientas básicas y principales de mi arsenal de desarrollador. Hoy la pongo a disposición de la comunidad con la esperanza que sea de gran utilidad en los actuales y futuros desarrollos.

La función que pongo a continuación, por lo general, la tengo dentro de un objeto que envuelve una serie de funciones comunes como son la validación de RUT, TRIM, Rellenos de cadenas con ceros… etc, pero con el fin de simplificar este POST lo dejé en una función sencilla para una implementación y uso de manera simple y muy rápida. La base de la validación es a través de una expresión regular, por lo que es importante mencionar, que la validación busca comprobar al forma del correo ingresado, pero no su existencia de la cuenta, para ello se necesitaría una implementación algo más compleja.

GIST del snippet

 

Saludos!

Ejemplo plugin google maps

Google Maps, ejemplo en Codepen.io

Esta es una implementación sencilla para ejemplificar el uso de la librería JavaScript de GoogleMaps, el objetivo es la de comprender el uso del plugin y manejar la información regtornada.

Para ejecutar la aplicación, se debe escribir alguna dirección en la barra de texto superior e inmediatamente, después de dejar de tipear por un segundo, gatilla la ejecución de la llamada a GoogleMaps, para obtener la información solicitada.
Una cosa importante, que se debe tener una cuenta, en Google Developers https://console.developers.google.com, para crear un proyecto y habilitar la API de GoogleMaps. Mas detalles pueden ser encontrados en https://developers.google.com/maps/web/

See the Pen Google Maps retorno de búsqueda by Cesar Gonzalez (@donpandix) on CodePen.

 

 

Actualización

Para adjunto los fuentes del desarrollo para un análisis mas claro de la implementación, la URL directa a GIST está en https://gist.github.com/donpandix/ y acá los fuentes:

Trim implementado con JavaScript

Función trim implementada como prototipo con JavaScript

Esta función tiene por finalidad el implementar la función Trim en JavaScript, la cual recorta los bordes blancos de una cadena que pudiesen tener a los costados, también cuando la cadena está formada sólo por espacios la deja vacía.

Hay otras implementaciones que también puede lograr la misma funcionalidad, particularmente con JQuery, lo bueno es que esta implementación no choca con otras librerías.

Validación de la forma de un email implementado con Java

Validación de la forma de un email, por medio de expresiones regulares implementado en Java.

Esta es una función de validación de email que ya he implementado con PHP y JavaScript, hasta ahora me han funcionado bastante bien, esta misma funcionalidad la he tenido que implementar en lenguaje Java y hoy la pongo a disposición para todo aquel que le interese hacer uso de ella de forma libre, ahora, si además deseas mejorarla haciéndola más eficiente, te lo agradeceré un montón, finalmente acá les va el código que tengo alojado en GIST:

 

Para hacer uso de esta clase, es de manera muy sencilla, se debe invocar la clase estática y su método validaEmail la cual retorna un booleano, evidentemente si la cadena con el valor del email a validar está correcto, retornará un TRUE, en caso contrario retornará un FALSE.

Espero que les sea de muchísima utilidad, hasta la próxima.

Cabecera para retorno de objeto JSON en PHP

Header para el retorno de arreglo serializado en JSON

Este es un TIP para setear la cabecera de PHP cuando retornar cadenas de texto con formato JSON, esto con el fín de que la salida de contenido sea reconocido por JavaScript (en particular por llamadas AJAX) como un objeto, envés de una cadena de texto simple, lo cual es muy util porque puedes acceder de inmediato a los componentes del objeto evitando el pasear la cadena retornada a objeto.

la línea en cuestión es:

header(‘Content-Type: application/json’)

Aca un mini-ejemplo de su implementación en un Php:

Algo importante a considerar, es que no debe tener salidas de texto anteriores (echos o vardumps) antes de la declaración del header, porque en caso de que existan salidas ajenas al Json entonces el resultado final no será el esperado.

Restricción de caracteres para campos input con JQUERY y REGEXP

En el deseo de mejorar las funcionalidades y de paso agilizar el proceso de desarrollo, he creado esta funcionalidad para la restricción de caracteres de ingreso por un usuario a un campo input, esta implementación está realizada con javascript, adicionalmente hago uso de la librería JQUERY y la evaluación de expresiones regulares. Cada expresión debe ser configurada en un atributo llamado “regexp” en el mismo componente input del formulario, por medio del selector de jquery se le asigna esta funcionalidad al campo al término de la carga del DOM.

Acá un ejemplo en acción de su implementación en CODEPEN

Para probar en línea las expresiones regulares, recomiendo usar la página http://regexr.com/

Pinocho on the flow

Pinocho moviendo la cabeza con ritmo y estilo (VINE)

Video de un muñeco de Pinocho, el propósito era la de ser posteado en mi sitio web personal, nada mas que para ver como se visualiza su inserción y jugar un rato.

Esto es sólo para probar la inserción de videos de Vine en un post de WordPress

String Pad Left función relleno de caracteres en JAVA

String Pad Left es una función sencilla que llena de caracteres específicos el lado izquierda de la cadena

String Pad Left es una implementación extremadamente sencilla de una función que llena con un carácter específico el lado izquierdo de una cadena para que tenga un largo final específico, por ejemplo, si tengo una cadena de texto “ZZZ” puedo modificar esta cadena para que tenga un largo de 10 caracteres siendo llenada por la izquierda con el carácter “Y” dando como resultado la cadena “YYYYYYYZZZ”.  Esta implementación la use para una aplicación en particular que estoy desarrollando y como se ajustó bien al problema que tenía que resolver, la verdad, es que no la he tocado más, pero probablemente tendré que mejorarla en un futuro muy cercano. De todas formas la dejo por si te sirve, al menos, como base de una solución.

Formatea número con puntos en JavaScript 1.0

Una función tremendamente útil para el despliegue de información es la del formateo de números, particularmente cuando se trata de valores en moneda o similares, siempre es una lata buscar en internet una función simple que haga la pega, por lo que para todos los que la necesiten les comparto una que desarrollé… aunque es muy simple probablemente la iré potenciando de a poco, por ahora lo que hace es poner los puntos de miles donde corresponde. El valor de entrada debe ser de tipo numérico porque en caso contrario devolverá un bonito 0.

Esta es la declaración de la funciones

Si quieres ver esta implementación en acción, puedes revisar este ejemplo en CODEPEN http://codepen.io/donpandix/pen/RWVdda

Estructura de datos en Swift: Lista doblemente enlazada, inserción

Esta es una implementación muy sencilla de una lista doblemente enlazada en Swift, la ventaja de este tipo de estructura de datos es la de poder navegar hacia los dos sentidos de la lista. La implementación la hice en Swift y he aquí el código

 

acá está el link al código en ejecución https://repl.it/@donpandix/Listas-enlazadas-dobles

Como nota adicional la complejidad del recorrido de esta como de la lista simple es de O(n)

Navegación de entradas

1 2 3
Volver arriba