SlideShare una empresa de Scribd logo
1 de 12
ESTRUCTURA DE
DATOS
PRESENTACIÓN
Ing. Jesús Gómez Ávila
Estructura de datos 1
Descripción general
Estructura de Datos es una asignatura troncal de las carreras vinculadas
a la informática dictadas en la Facultad de Ingeniería de la
Universidad Contemporánea De Las Américas.
Ubicación: Ingeniería en sistemas 2do. Año.
Área: Tecnologías Básicas de Desarrollo.
Carácter: Teórico Práctico.
Régimen: Cuatrimestral (15 semanas)
Carga Horaria: 5 horas semanales – 75 horas totales
Estructura de datos 2
Objetivos:
General:
El objetivo general de la enseñanza de la programación es capacitar a los alumnos
para construir metódicamente algoritmos legibles, bien
documentados, correctos, eficientes, fáciles de mantener y reutilizar.
La asignatura Estructura de Datos desarrolla los conceptos referentes al uso de tipo
de datos, tipo de datos abstractos y estructura de datos en el desarrollo de
productos de software con especial énfasis en la programación orientada a objetos.
Al finalizar el cursado de la asignatura, el alumnos debe ser capaz de aplicar y
adaptar las estructuras de datos a nuevos requerimientos de operaciones y
representaciones de la información.
Específicos:
Conocer y comprender los conceptos básicos del diseño de estructuras de datos.
Adquirir los principios de las estructuras de datos desde el punto de vista
abstracto, la forma en que se representan y las operaciones que pueden realizarse
con ellas.
Implementar estructuras de datos utilizando programación orientada a objetos.
Estructura de datos 3
Metodología
En el desarrollo de las clases teóricas se presentan las estructuras de datos como solución
a problemas concretos del tratamiento de la información.
La exposición teórica de los diferentes conceptos y métodos se intercala con el planteo y
resolución de ejercicios y problemas que ilustran la teoría.
En las horas dedicadas a la práctica se profundizan los ejercicios y problemas utilizados en
la teoría, dejando otros similares como tarea personal para los alumnos.
Elaboración de breves informes cuyos temas se asignan con la suficiente anticipación de
manera que los alumnos pueden realizar la investigación y consultas necesarias para
confeccionar el informe y correspondiente conclusión. Los temas de los informes, fechas
de presentación y asignación de acuerdo al último número de documento se publican en la
página de la asignatura.
Materiales
Se utilizará un blog de apoyo donde se estará compartiendo información y ejercicios
relacionados con los temas además de una pagina de apoyo, dirección del blog:
http://estructuradedatosjesus.blogspot.mx/
Estructura de datos 4
Estructura de datos 5
Evaluación.
Evaluación del proceso:
Las clases teóricas y especialmente las prácticas requieren de la participación de los
alumnos en el planteo y resolución de los problemas, lo que permite realizar una
evaluación permanente del proceso de enseñanza - aprendizaje.
Evaluación del producto:
Los exámenes parciales evalúan ejercicios netamente prácticos, los mismos pueden
realizarse en pseudolenguaje, C#, Java o C++. deberán aprobarse con nota mayor o
igual a 5.
Condiciones para aprobar la asignatura:
Registrar el 80% de asistencia a trabajos prácticos.
Aprobar los dos parciales con nota mayor o igual a siete, es posible recuperar solo
uno de los dos parciales.
Presentar en tiempo y forma los informes requeridos por la cátedra.
INTRODUCCIÓN
Estructura de datos 6
UNIDAD I. ANALISIS DE ALGORITMOS
Estructura de datos 7
El termino resolución de un problema se refiere al proceso completo que abarca
desde la descripción inicial del problema hasta el desarrollo de un programa de
computadora que lo resuelva. La resolución de un problema exige el diseño de un
algoritmo que resuelva el problema propuesto. Los pasos para la resolución de un
problema son:
• 1. Diseño de un algoritmo que describa la secuencia ordenada de pasos –sin
ambigüedades – que conducen a la solución de un problema dado. (Análisis del
problema y desarrollo del algoritmo).
• 2. Expresar el algoritmo como un programa en un lenguaje de programación
adecuado. (fase de codificación).
• 3. Ejecución y validación del programa por la computadora
(Luis Joyanes Aguilar e Ignacio Zahonero Martínez 2007)
Estructura de datos 8
Para llegar a la realización de un programa es necesario el diseño previo de un
algoritmo indicando cómo hace el algoritmo la tarea solicitada, y eso se
traduce en la construcción de un algoritmo.
El resultado final del diseño es una solución que debe ser fácil de traducir a
estructuras de datos y de control de un lenguaje de programación específico.
Las dos herramientas mas comunes utilizadas para diseñar algoritmos son:
 Diagramas de flujo y
 Pseudocódigo
Diagramas de flujo: es una representación grafica de un algoritmo.
Pseudocódigo: se puede definir en esencia como un lenguaje de
especificación de algoritmos.
Estructura de datos 9
Ejemplo 1.1. Diagrama de flujo de un algoritmo que lee el radio de un
circulo y calcula su perímetro y su área.
Se declaran las siguientes variables reales: r, longitud y ´rea, así como la constante pi
Estructura de datos 10
Ejemplo 1.2. Pseudocódigo de un algoritmo que lee 3 números; si el primero
es positivo calcula el producto de los 3 números, en caso contrario calcula la
suma de los 3 números.
Estructura de datos 11
CONCLUSIÓN:
El algoritmo es la especificación concisa del método para resolver un problema con
indicación de las acciones a realizar.
• Un algoritmo es entonces un conjunto finito de reglas que dan una secuencia
de operaciones para resolver un determinado problema.
• También se define como un método para resolver un problema que tiene en
general una entrada y una salida.
• Las características fundamentales que debe tener un algoritmo son: ?
(Investigar)
(Luis Joyanes Aguilar e Ignacio Zahonero Martínez 2007)
Actividad 1.
 Investigar los siguientes conceptos relacionados con el estudio de las
estructuras de datos y la calidad del software:
 Algoritmo
 Datos
 Lenguaje
 Compilador
 Abstracción
 Diagrama de
flujo
 Pseudocódigo
 Estructura de
datos
 Problema
 Robustez
 Eficiencia
 Corrección
 Legibilidad
 Integridad
Estructura de datos 12
 Investigar las características fundamentales de un algoritmo.
 Escribe el diagrama de flujo de un algoritmo que calcule el área y perímetro
de un triángulo.
 Escribe en pseudocódigo un algoritmo que calcule el promedio de 3 números.

Más contenido relacionado

La actualidad más candente

Estructura de datos power point
Estructura de datos power pointEstructura de datos power point
Estructura de datos power pointunachi
 
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetosClara Patricia Avella Ibañez
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseGuillermo Díaz
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoActimel
 
Llave primaria y llave foránea
Llave primaria y llave foráneaLlave primaria y llave foránea
Llave primaria y llave foráneaTata Jaramillo
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseintHEIVER CUESTA
 
Administración de memoria en java
Administración de memoria en javaAdministración de memoria en java
Administración de memoria en javaLuis Miguel De Bello
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2Humano Terricola
 
Diccionario De Datos
Diccionario De DatosDiccionario De Datos
Diccionario De Datosnahun1385
 

La actualidad más candente (20)

Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Estructura de registros
Estructura de registrosEstructura de registros
Estructura de registros
 
Estructura de datos power point
Estructura de datos power pointEstructura de datos power point
Estructura de datos power point
 
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
 
Gestion de Memoria
Gestion de MemoriaGestion de Memoria
Gestion de Memoria
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Llave primaria y llave foránea
Llave primaria y llave foráneaLlave primaria y llave foránea
Llave primaria y llave foránea
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Diagrama de casos de usos
Diagrama de casos de usosDiagrama de casos de usos
Diagrama de casos de usos
 
Ejemplo dfd
Ejemplo dfdEjemplo dfd
Ejemplo dfd
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseint
 
Administración de memoria en java
Administración de memoria en javaAdministración de memoria en java
Administración de memoria en java
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
6 Curso de POO en Java - clases y objetos
6  Curso de POO en Java - clases y objetos6  Curso de POO en Java - clases y objetos
6 Curso de POO en Java - clases y objetos
 
Windows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejerciciosWindows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejercicios
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2
 
Diccionario De Datos
Diccionario De DatosDiccionario De Datos
Diccionario De Datos
 

Similar a Estructura de datos presentacion y sesion 1

CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOyuribel
 
CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOyuribel
 
CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOyuribel
 
Plan de Curso 336
Plan de Curso 336Plan de Curso 336
Plan de Curso 336rbrosabelen
 
Plan anual didactico
Plan anual didacticoPlan anual didactico
Plan anual didacticoPaul Paucar
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiRaimonKoudsi
 
Programación algoritmica
Programación algoritmicaProgramación algoritmica
Programación algoritmicaMaría C. Plata
 
Guia de programación 10
Guia de programación 10Guia de programación 10
Guia de programación 10mariacepla
 
Procesos de analisis de sistemas
Procesos de analisis de sistemasProcesos de analisis de sistemas
Procesos de analisis de sistemasCésar Barragán
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosYeison Smith
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosbrayanfp
 
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02Aleja Andrade
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosMarceliTha Cardozzo
 

Similar a Estructura de datos presentacion y sesion 1 (20)

CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICO
 
CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICO
 
CENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICOCENTRO DE INNOVACIÓN TECNOLÓGICO
CENTRO DE INNOVACIÓN TECNOLÓGICO
 
SILABO INF.102
SILABO INF.102SILABO INF.102
SILABO INF.102
 
Plan de Curso 336
Plan de Curso 336Plan de Curso 336
Plan de Curso 336
 
Plan anual didactico
Plan anual didacticoPlan anual didactico
Plan anual didactico
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
 
Programación algoritmica
Programación algoritmicaProgramación algoritmica
Programación algoritmica
 
Tp336 2015-1
Tp336 2015-1Tp336 2015-1
Tp336 2015-1
 
Guia de programación 10
Guia de programación 10Guia de programación 10
Guia de programación 10
 
Procesos de analisis de sistemas
Procesos de analisis de sistemasProcesos de analisis de sistemas
Procesos de analisis de sistemas
 
Proyecto Aula Virtual
Proyecto Aula VirtualProyecto Aula Virtual
Proyecto Aula Virtual
 
358pc
358pc358pc
358pc
 
INF-102
INF-102INF-102
INF-102
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmos
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmos
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmos
 
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02
Adsi c02-gd01guiasoluciondealgoritmos-130313195007-phpapp02
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmos
 
Adsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmosAdsi c02-gd01 guia solucion de algoritmos
Adsi c02-gd01 guia solucion de algoritmos
 

Estructura de datos presentacion y sesion 1

  • 1. ESTRUCTURA DE DATOS PRESENTACIÓN Ing. Jesús Gómez Ávila Estructura de datos 1
  • 2. Descripción general Estructura de Datos es una asignatura troncal de las carreras vinculadas a la informática dictadas en la Facultad de Ingeniería de la Universidad Contemporánea De Las Américas. Ubicación: Ingeniería en sistemas 2do. Año. Área: Tecnologías Básicas de Desarrollo. Carácter: Teórico Práctico. Régimen: Cuatrimestral (15 semanas) Carga Horaria: 5 horas semanales – 75 horas totales Estructura de datos 2
  • 3. Objetivos: General: El objetivo general de la enseñanza de la programación es capacitar a los alumnos para construir metódicamente algoritmos legibles, bien documentados, correctos, eficientes, fáciles de mantener y reutilizar. La asignatura Estructura de Datos desarrolla los conceptos referentes al uso de tipo de datos, tipo de datos abstractos y estructura de datos en el desarrollo de productos de software con especial énfasis en la programación orientada a objetos. Al finalizar el cursado de la asignatura, el alumnos debe ser capaz de aplicar y adaptar las estructuras de datos a nuevos requerimientos de operaciones y representaciones de la información. Específicos: Conocer y comprender los conceptos básicos del diseño de estructuras de datos. Adquirir los principios de las estructuras de datos desde el punto de vista abstracto, la forma en que se representan y las operaciones que pueden realizarse con ellas. Implementar estructuras de datos utilizando programación orientada a objetos. Estructura de datos 3
  • 4. Metodología En el desarrollo de las clases teóricas se presentan las estructuras de datos como solución a problemas concretos del tratamiento de la información. La exposición teórica de los diferentes conceptos y métodos se intercala con el planteo y resolución de ejercicios y problemas que ilustran la teoría. En las horas dedicadas a la práctica se profundizan los ejercicios y problemas utilizados en la teoría, dejando otros similares como tarea personal para los alumnos. Elaboración de breves informes cuyos temas se asignan con la suficiente anticipación de manera que los alumnos pueden realizar la investigación y consultas necesarias para confeccionar el informe y correspondiente conclusión. Los temas de los informes, fechas de presentación y asignación de acuerdo al último número de documento se publican en la página de la asignatura. Materiales Se utilizará un blog de apoyo donde se estará compartiendo información y ejercicios relacionados con los temas además de una pagina de apoyo, dirección del blog: http://estructuradedatosjesus.blogspot.mx/ Estructura de datos 4
  • 5. Estructura de datos 5 Evaluación. Evaluación del proceso: Las clases teóricas y especialmente las prácticas requieren de la participación de los alumnos en el planteo y resolución de los problemas, lo que permite realizar una evaluación permanente del proceso de enseñanza - aprendizaje. Evaluación del producto: Los exámenes parciales evalúan ejercicios netamente prácticos, los mismos pueden realizarse en pseudolenguaje, C#, Java o C++. deberán aprobarse con nota mayor o igual a 5. Condiciones para aprobar la asignatura: Registrar el 80% de asistencia a trabajos prácticos. Aprobar los dos parciales con nota mayor o igual a siete, es posible recuperar solo uno de los dos parciales. Presentar en tiempo y forma los informes requeridos por la cátedra.
  • 7. UNIDAD I. ANALISIS DE ALGORITMOS Estructura de datos 7 El termino resolución de un problema se refiere al proceso completo que abarca desde la descripción inicial del problema hasta el desarrollo de un programa de computadora que lo resuelva. La resolución de un problema exige el diseño de un algoritmo que resuelva el problema propuesto. Los pasos para la resolución de un problema son: • 1. Diseño de un algoritmo que describa la secuencia ordenada de pasos –sin ambigüedades – que conducen a la solución de un problema dado. (Análisis del problema y desarrollo del algoritmo). • 2. Expresar el algoritmo como un programa en un lenguaje de programación adecuado. (fase de codificación). • 3. Ejecución y validación del programa por la computadora (Luis Joyanes Aguilar e Ignacio Zahonero Martínez 2007)
  • 8. Estructura de datos 8 Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo indicando cómo hace el algoritmo la tarea solicitada, y eso se traduce en la construcción de un algoritmo. El resultado final del diseño es una solución que debe ser fácil de traducir a estructuras de datos y de control de un lenguaje de programación específico. Las dos herramientas mas comunes utilizadas para diseñar algoritmos son:  Diagramas de flujo y  Pseudocódigo Diagramas de flujo: es una representación grafica de un algoritmo. Pseudocódigo: se puede definir en esencia como un lenguaje de especificación de algoritmos.
  • 9. Estructura de datos 9 Ejemplo 1.1. Diagrama de flujo de un algoritmo que lee el radio de un circulo y calcula su perímetro y su área. Se declaran las siguientes variables reales: r, longitud y ´rea, así como la constante pi
  • 10. Estructura de datos 10 Ejemplo 1.2. Pseudocódigo de un algoritmo que lee 3 números; si el primero es positivo calcula el producto de los 3 números, en caso contrario calcula la suma de los 3 números.
  • 11. Estructura de datos 11 CONCLUSIÓN: El algoritmo es la especificación concisa del método para resolver un problema con indicación de las acciones a realizar. • Un algoritmo es entonces un conjunto finito de reglas que dan una secuencia de operaciones para resolver un determinado problema. • También se define como un método para resolver un problema que tiene en general una entrada y una salida. • Las características fundamentales que debe tener un algoritmo son: ? (Investigar) (Luis Joyanes Aguilar e Ignacio Zahonero Martínez 2007)
  • 12. Actividad 1.  Investigar los siguientes conceptos relacionados con el estudio de las estructuras de datos y la calidad del software:  Algoritmo  Datos  Lenguaje  Compilador  Abstracción  Diagrama de flujo  Pseudocódigo  Estructura de datos  Problema  Robustez  Eficiencia  Corrección  Legibilidad  Integridad Estructura de datos 12  Investigar las características fundamentales de un algoritmo.  Escribe el diagrama de flujo de un algoritmo que calcule el área y perímetro de un triángulo.  Escribe en pseudocódigo un algoritmo que calcule el promedio de 3 números.