Problema Con Esctrutura De Datos. Periódicos Diarios.


Objetivo: Problema Con Esctrutura De Datos. Periódicos Diarios.
Hola!.

Os propongo un problema muy sencillo. Tenéis que dar vuestra idea de cual creéis que es la mejor estructura de datos para este problema.
O como pensáis que se puede representar de distintas formas. Podéis aportar una manera posible, la que más os guste.

Se trata de:

En un mes o más tengo distintos periódicos de distintas editoriales, cada uno de una fecha. Y quiero saber "cuales" periódicos
tengo de "una fecha concreta".

Bien. Al principio había pensado en un diccionario de estructuras u objetos.
Pero claro, si la clave es la fecha, cuando dos tengan la misma fecha, se pisa al anterior.
Quería algo más directo, mas rápido. Hasta ahora lo he hecho de esta forma:

Public Sub Main()

Dim adiario As New String[][]

adiario.Add(["01/12/2014", "Diario de Cádiz"])
adiario.Add(["01/12/2014", "La Voz de Cádiz"])
adiario.Add(["02/12/2014", "El Baluarte de Cádiz"])
adiario.Add(["02/12/2014", "Viva Cádiz"])
adiario.Add(["02/12/2014", "Diario de Cádiz"])

PresentarPeriodicos("01/12/2014", adiario)

End


Public Sub PresentarPeriodicos(fecha As String, cdiarios As String[][])

Dim diario As String[]

For Each diario In cdiarios
If diario[0] <> fecha Then
Continue
Else
Print diario[1]
Endif
Next

End


Naturalmente la acción de presentar el periódico es algo muy simple. Podíamos hacer cosas más complejas.
En este caso es saber cuales tengo de una fecha concreta. Por otro lado el nombre de la ciudad se repite como el ajo.

Saludos

última edición por Shell el Sabado, 13 Diciembre 2014, 13:37; editado 4 veces
Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Esto no es una respuesta, es una reflexión personal: Mira que soy malo resolviendo problemas "teóricos". Entiendo perfectamente la utilidad del problema, veo lo que se quiere hacer, representar y aprender con él... pero no puedo implicarme en él.
Algo me dice de manera compulsiva:
¿Una fuente de datos que crece a ritmo de 5 registros diarios? Respuesta:
Base de datos:
-Tabla de diarios
-Ttabla de publicaciones
-Tabla diarios-publicaciones,
-consulta de publicaciones con selección por día y Diario.
-Listado de Dias, listado de publicaciones por diario

Nota: preguntar al cliente si quiere tabla de titulares, titulares compartidos entre publicaciones. Extractos de textos para búsquedas aproximadas...

Plazo de ejecución: Dos meses hasta las primeras pruebas.


Deformación profesional, que se llama....

Perfil MP  
Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Shordi:

Esa sería la manera más fácil, hacerlo con una base de datos. La más ideal seguramente, pero no era cuestión de llegar tan lejos.
Cuando ya estas acostumbrado a hacer las cosas de una forma, salta la alarma arriba y automáticamente
dices..pero si es más fácil de la otra forma. Naturalmente le has sacado mas chicha al problema.

Te cuento la historia:

Hay dos palabras, hash table. Traducirlo a español, resulta de lo más chocante la palabra hash es picadillo.
Me surgió el tema por los diccionarios,colecciones en gambas, matriz asociativa en otros lenguajes.
Y de esta palabra, buscando en la wiki, salió el ejemplo de los periódicos.

http://es.wikipedia.org/wiki/Tabla_hash

Buscaba un termino con más sentido que "picadillo".
Y el ejercicio de los periódicos no estaba mal. Desde luego no pude aplicar una colección.

Realmente, crear todo el código de una base de datos para ese ejemplo, ¿ no es algo excesivo ?.
¿ Fue un encargo de trabajo que te hicieron alguna vez ?. Actúas automáticamente.

Saludos

última edición por Shell el Sabado, 13 Diciembre 2014, 18:31; editado 1 vez
Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Citar:
¿ Fue un encargo de trabajo que te hicieron alguna vez ?. Actúas automáticamente.

Por supuesto que no me han encargado eso nunca, lo que quería subrayar es que siempre me he movido en el terreno de los casos reales y las soluciones prácticas. Los casos teóricos de libros y demás, como que se me quedan grandes, casi que no los entiendo... y eso me ha llevado a más de un fracaso.

Perfil MP  
Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Shell:

Citar:
Realmente, crear todo el código de una base de datos para ese ejemplo, ¿ no es algo excesivo ?.

Manejar bases de datos es muy sencillo, una vez que aprendes cual es la dinamica a seguir, porque siempre es lo mismo.

Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
jsbsan escribió: [Ver mensaje]

Manejar bases de datos es muy sencillo, una vez que aprendes cual es la dinamica a seguir, porque siempre es lo mismo.


Cierto. Es muy fácil consultar la fecha y mostrar los periódicos con una sentencia SQL.
Todo dependerá hasta donde queramos llegar a hacer y de si merece la pena la creación de una base para un ejemplo sencillo.
Las base de dato va mucho mas allá de este ejemplo.

No es lo mismo consultar 10 registros que 100, 500..etc.

Vamos avanzando y aprovechando recursos nuevos. No es lo mismo tener 100 variables que un array de 100 elementos.
No es lo mismo escribir 100 lineas mostrando algo repetitivo que usar un bucle y reducir ese proceso. Como tampoco es
lo mismo repetir un proceso, cuando para ello tenemos los procedimiento y funciones. Y así, poco a poco.

Depende del análisis del problema y cuantas posibilidades de resolución tenga y cuantas sepas aplicar, cual te sera más fácil.
Cual sera más practico con el tiempo y el uso. Y claro, del tiempo disponible que tengas. No es lo mismo que yo haga una pequeña
aplicación a alguien que tiene un tiempo limite para la entrega de un proyecto. Las circunstancias son distintas.

El motivo principal de la cuestión es el conocimiento de las estructuras de datos en gambas, no derivar la cuestión a otro lenguaje.
Entonces se puede explicar que si, que es posible hacerlo de una forma en gambas, quizás en otra época hubiera sido una solución viable.
Pero es más practico hacerlo con una base de datos ya que las ventajas son obvias.

Por otro lado, no se esta aprovechando el recurso de los arrays. No se esta aprendiendo a lo mejor una posibilidad que en un futuro
puede ser necesario. La práctica con estos. El aprendizaje deber seguir unos pasos y no saltos bruscos.

Puede que este ejemplo parezca centrase en la búsqueda de una fecha y presentar unos resultados.
Lo realmente importante es que estas aprendiendo a usar los arrays de una forma distinta a la habitual.
Arrays que a la vez contienen otros arrays. En mi caso, para mi sería como listas de listas por la similitud
con Python.

En fin, después de las expresiones regulares, me tocara ver algo de redes y luego las bases de datos relacionales...
Las próximas cuestiones que haré serán sobre expresiones regulares en Gambas.

Intento seguir una formación lineal, ejem, ejem, sin destripar el final antes de llegar a el.
( Es que me he propuesto leer un manual por completo de principio a fin).

Saludos

Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Citar:
Es que me he propuesto leer un manual por completo de principio a fin


Ojalá yo hubiese hecho eso alguna vez en mi vida. Habría ahorrado miles de horas de inntento-error-sobretodoerror...
Aplaudo tu decisión.

Saludos.

Perfil MP  
Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
shordi escribió: [Ver mensaje]
Citar:
Es que me he propuesto leer un manual por completo de principio a fin


Ojalá yo hubiese hecho eso alguna vez en mi vida. Habría ahorrado miles de horas de inntento-error-sobretodoerror...


Bueno, de los errores también se aprende.

shordi escribió: [Ver mensaje]

Aplaudo tu decisión.


Gracias. No me dirás que aprendiste sin manuales. Apuntes tomarías no ?.
Hay personas que cuando leen un libro de programación no lo leen desde la primera pagina a la ultima, lo van leyendo según necesitan un tema u otro.
Supongo que ya tienen una experiencia o manual leído.

Saludos

Objetivo: Re: Problema Con Esctrutura De Datos. Periódicos Diarios.
Yo siempre aplico el viejo y sabio consejo:

"Cuando todo falle y no sepa a quién recurrir, consulte el manual"

Así me va...

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4152s (PHP: -78% SQL: 178%)
Consultas SQL: 47 - Debug off - GZIP Activado