Estructuras de datos en C
Quiero realizar por medio de este post algo que he tenido en mente desde hace muchos, muchos meses:
En 2011 estudié, casi absolutamente por mi propia cuenta, ciertas estructuras de datos básicas para mis estudios universitarios en ciencias computacionales. Fruto de mis esfuerzos, junto con el increíble apoyo de mis amigos, produje algunas muestras de código en C para ilustrar como funcionan algunas de las estructuras y algoritmos que estudié. Últimamente, leyendo ciertos archivos viejos en mi computadora, me volví a encontrar con mis programas... y al recordar los buenos y laboriosos tiempos que tuve elaborándolos, me he animado a compartirlos con esperanzas de que puedan resultar del más remoto provecho alguno, quizá, a personas alrededor del mundo, a otros estudiantes universitarios que tengan que experimentar el mismo trance que yo tuve años atrás.
Aclaro que el código es feo, amatéurico, está inoptimizado, es impresentable, y potencialmente puede romper cosas (AKA: lol en serio estás usando scanf lol lol lol) dado que efectivamente no refleja adecuadamente mis habilidades (o falta de las mismas) actuales como programador. No obstante, he hecho mi mejor esfuerzo por escribir documentación explícita y de bajo nivel que ayude, espero a explicar mejor como funcionan las estructuras y algoritmos usados. Inclusive he tenido este código en mi carpeta pública de Dropbox desde hace mucho, y algunos de ustedes probablemente ya lo han visto, pero no he querido dejar pasar el tiempo sin indexar y publicar mi información en donde pueda ser mejor vista. Otra vez, espero que sea del más remoto uso posible a alguien allá afuera.
HERE'S THE HOT STUFF!!!!!!!!!!!!
Proveo el código bajo una licencia abierta, libre de restricciones, en lo que considero una licencia informal inspirada por los principios ejemplificados por GPL y los estándares de open source, pero sin nada de la, eh, formalidad y realidad y es algo que existe-dad, que llamo...
GP-DWTFYWWMCIDGAFIYRIOMOFIIHYFBDCIAOMFSB
(Siglas de: General Public Do Whatever The Fuck You Want With My Code I Don't Give A Fuck If You Rip It Off Matter Of Fact If It Helps You Fine But Don't Complain If Any Of My Flimsy Shit Breaks)
Así que... eh, adelante. Digo, me imagino que vincular de vuelta a este post y dar crédito, desde sus blogues o facebookes o twitterns si les funciona es apreciado, pero, saben, realmente no importa.
PS. Sí, sé que no tengo un programa ilustrando el algoritmo de Djikstra, grafos ni árboles dinámicos, esos programas son triviales de implementar con el trabajo presentado hoy, y, eeh... es que se los comió mi perro computacional.
UPDATE (27/2/13): Adicionalmente de los (no) existentes términos bajo los cuales he licensado mi codigo, lo doble licencío bajo los términos de la licencia de software de Beerware. Aplicable a todos los programas, he hecho un anexo con la licencia en el folder de Dropbox. ¡Feliz programación!
UPDATE (29/6/15): Sí! Lo sé! Yo también me estoy preguntando por qué, pero sucede que ahora ya se control de versiones y me decidí a subir este código a github. Más de tres años después de la última actualización, que disfruten!
https://github.com/nullset2/datastructs