16/06/2006, 15:14
|
| | | Fecha de Ingreso: marzo-2003 Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 9 meses Puntos: 1 | |
pufffff, el problema no es tan complicado como para bases de datos ni autómatas finitos, en realidad el número de posibles cadenas rondará entre los 30 y 50 como mucho de ahí que seguramente termine cogiendo la opción del bucle for.
pitukilloloco, el problema que le veo a la utilización de un autómata finito para esto es el gran número de estados que se generaría. Imaginate tener 1000 cadenas distintas de entre 5-10 caracteres tan solo, pues tendrías que programarte miles de estados. Ahora bien, también es verdad que sería lo más eficiente en ejecución, pero creo que no compensa. Por otra parte, la programación se podría simplificar mucho utilizando alguna herramienta tipo Lex (herramienta para análisis léxico de lenguajes que se podría utilizar para construir el autómata)
Otra solución que tenía en mente para quitar ejecuciones de strcmp era la de IF "balanceados" (por llamarle de alguna forma). Básicamente sería ordenar todas las posibles cadenas y preguntar por la del medío, tipo las búsquedas ¿dicotómicas? (no recuerdo si este era el nombre exacto).
Instru, respecto a las ventajas que indicas:
- Quitar los defines es justo lo que no quiero. Los define los tengo simplemente para facilitar la lectura del código y su futuro mantenimiento, ya que dicho número se utilizará en multitud de lugares del código y siempre se entenderá mejor algo tipo persona==PEPE que persona==23.
- En la segunda y la tercera estoy totalmente de acuerdo, y es lo q me inclina a tomar esa solución.
Saludos y muchas gracias por contestar a los 2 :) |