GraphADT es una proyecto alojado en github escrito en java que te permite trabajar con grafos, a la fecha de escribir este post se encuentra en la versión 2.0 por tanto ya esta bastante trabajado.
¿Que es un grafo?
En matemáticas y ciencias de la computación, un grafo (del griego grafos: dibujo, imagen) es un conjunto de objetos llamados vértices o nodos unidos por enlaces llamados aristas o arcos, que permiten representar relaciones binarias entre elementos de un conjunto.1 Son objeto de estudio de la teoría de grafos. [Santa Wikipedia]
Datos del proyecto
Proyecto: GraphADT
Licencia: MIT
Autor: Amir Bawab (Canada)
Código Fuente: <<Link en GitHub>>
A continuación mostraremos un ejemplo de su uso siguiendo los pasos dejados (en ingles) en la web del proyecto, el IDE que utilizamos es Netbeans, pero adaptarlo a Eclipse no es nada complicado.
Paso 1
Descarga desde GitHub el proyecto y descomprime en tu pc (1.76 MB)
Dentro el *.rar encontraras lo siguiente:
Paso 2
Crea un proyecto vació en Netbeans con el nombre de «TestGraph» y añade un paquete llamado «example»
Paso 3
Copia la carpeta «graph» dentro la carpeta «src» del proyecto netbeans, copie el archivo «GraphDriver.java» a la carpeta (paquete) «example«
Paso 4
Abra el archivo «GraphDriver.java«, en este archivo realizaremos dos modificaciones.
1) En la primera linea nos encontraremos con un error «Paquete defectuoso», para solucionar esto damos Enter para crear nueva linea y escribimos: package example; (el paquete donde se encuentra el archivo java)
2) Buscamos la linea de código:
Graph<String,String> graph = Graph.inParser("MIT.txt", true);
y completamos la ruta del archivo MIT.txt
Graph<String,String> graph = Graph.inParser("D:\\carpeta\\donde\\descargaste\\GraphADT-master\\MIT.txt", true);
El archivo MIT.txt, es un archivo de texto que contiene la declaración de un grafo de la siguiente forma:
size=5 0 = A 1 = B 2 = C 3 = D 4 = E ; (0,1,10) (0,2,3) (1,3,2) (1,2,1) (2,1,4) (2,3,8) (2,4,2) (3,4,7) (4,3,9) ;
En la primera linea declara el tamaño del grafo «5». A continuación declara un ID y Nombre para cada vértice (o Nodo). Finalmente declara las aristas que unen cada vértice junto al peso, valor o ponderación (como prefiera llamarlo). graficando este grafo 🙂 con algún software (Yed por ejemplo), tenemos lo siguiente:
Paso 5
ejecuta el archivo «GraphDriver.java»
En la salida en pantalla podemos ver el grafo declarado en el archivo MIT.txt, la implementación de algunos métodos como BFS (Breadth First Search), DFS (Depth First Search), etc.
Sin duda un proyecto bastante fácil de comprende y usar, aun no lo probé a fondo pero parece que tiene muchas cosas interesante. Sera en otra ocasión.
enjoy!!!
Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.
Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye
Enjoy! :)
Según Santa Wikipedia: «Un archivo binario es un archivo informático que contiene información de cualquier tipo codifica...
Vue.js es un framework progresivo para la creación de interfaces de usuario de una sola página creado por Evan You. Pero...
Un servicio web (Web Services) es un sistema de software en la web que nos ofrece la posibilidad de realizar una o múlti...
HyperSQL DataBase (HSQLDB) es un moderno administrador de bases de datos relacionales, es portátil e implementado en jav...
Como se vio en un post anterior (Capturar video de una webcam con JMF) la captura de un video desde una webcam utilizand...
Windows XP fue lanzado oficialmente el 25 de octubre de 2001, han pasado ya 17 años y 7 meses convirtiendo así a XP uno...
Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...
En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...
Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...
Google Bard la inteligencia artificial de Google se actualiza con una mejora que entra a competir con el resto de IAs y...