000044036 001__ 44036
000044036 005__ 20170831221119.0
000044036 037__ $$aGDOC-2011-1153
000044036 041__ $$aspa
000044036 100__ $$0(orcid)0000-0002-5925-6049$$aTricas García, Fernando
000044036 24500 $$930213$$aEstructuras de datos y algoritmos
000044036 260__ $$aZaragoza$$bUniversidad de Zaragoza$$c2011-2012
000044036 520__ $$aA la hora de enfrentarse a la resolución de problemas de programación de tamaño medio surge la necesidad de dividir el diseño e implementación de la solución en una serie de módulos o partes, de tamaño y complejidad menor que el problema inicial, pero de forma que dichos módulos interactúen entre si de forma mínima y clara, y constituyan en su conjunto la solución del problema a resolver. Esta aproximación nos permitirá identificar y diseñar módulos con una misión muy clara y acotada, lo que reducirá su grado de dependencia con el resto, y nos permitirá desarrollar módulos reutilizables, eficientes, y robustos, facilitando también que el trabajo de implementación y depuración pueda ser repartido entre varios programadores que trabajen en paralelo. Gran parte de estos módulos se centrarán en la representación y gestión de la información necesaria para resolver el problema. De esta forma, cada uno de estos módulos encapsulará las estructuras de datos necesarias para representar y almacenar cierta información, ocultando los detalles de su implementación y ofreciendo al exterior únicamente operaciones permitidas (su interfaz), robustas y eficientes, lo que facilitará su reutilización. En este contexto, se puede definir un Tipo Abstracto de Datos (TAD) como el conjunto de valores que pueden tomar los datos de ese tipo y el conjunto de operaciones para manipularlos, definidos de forma independiente de cualquier representación o implementación. La definición de TADs es por tanto una herramienta de abstracción que intuitivamente responde a la necesidad de enriquecer nuestros lenguajes de programación permitiéndonos proponer nuevos tipos de datos que puedan utilizarse de forma similar a los que suelen ofrecerse predefinidos en un lenguaje de programación, ocultando al usuario de dichos tipos los detalles de su implementación, pero serán de naturaleza mucho más compleja que los tipos habitualmente predefinidos en un lenguaje de programación. 
000044036 521__ $$9148$$aGraduado en Ingeniería Informática
000044036 540__ $$aby-nc-sa$$bCreative Commons$$c3.0$$uhttp://creativecommons.org/licenses/by-nc-sa/3.0/
000044036 700__ $$0(orcid)0000-0003-4810-0062$$aCampos Laclaustra, Francisco Javier
000044036 700__ $$0(orcid)0000-0001-8531-353X$$aBernad Lusilla, Jorge Raul
000044036 700__ $$0(orcid)0000-0001-5664-6589$$aNaranjo Palomino, Fernando
000044036 700__ $$0(orcid)0000-0001-6644-0103$$aVillate Pérez, María Yolanda
000044036 700__ $$aPérez Palacín, Diego Carmelo
000044036 830__ $$9439
000044036 830__ $$9443
000044036 8564_ $$s108196$$uhttps://zaguan.unizar.es/record/44036/files/guia.pdf$$yGuía (idioma español)
000044036 980__ $$aGDOC$$bIngeniería y Arquitectura$$c110
000044036 980__ $$aGDOC$$bIngeniería y Arquitectura$$c326