Skip to content
Tecnología e Informática · 9o Grado

Ideas de aprendizaje activo

Estructuras de Datos: Listas y Vectores

Las estructuras de datos como listas y vectores son abstractas para muchos estudiantes. La experiencia práctica mediante actividades concretas y comparaciones directas ayuda a superar esta abstracción, haciendo visible el valor de organizar datos eficientemente en lugar de manejarlos individualmente.

Derechos Básicos de Aprendizaje (DBA)DBA Tecnologia e Informatica: Grado 9 - Estructuras de Almacenamiento de InformacionDBA Tecnologia e Informatica: Grado 9 - Pensamiento Computacional
30–50 minParejas → Toda la clase4 actividades

Actividad 01

Enseñanza entre Pares30 min · Parejas

Enseñanza entre Pares: Listas vs Variables Individuales

Pide a los pares que creen un programa para almacenar 5 notas de estudiantes con variables individuales, luego modifíquenlo usando una lista. Comparen el código en términos de líneas y facilidad para agregar más datos. Discutan la eficiencia.

Analizar por qué una lista es más eficiente que variables individuales para grandes volúmenes de datos.

Consejo de FacilitaciónDurante 'Pares: Listas vs Variables Individuales', pida a los estudiantes que escriban primero con variables separadas y luego con una lista, observando cómo el código se vuelve más limpio y funcional.

Qué observarPresentar a los estudiantes un escenario: 'Necesitas guardar los nombres de 50 estudiantes de tu clase'. Preguntar: '¿Qué estructura de datos usarías, variables individuales, una lista o un vector? Justifica tu respuesta explicando las ventajas o desventajas de tu elección en este caso específico.'

ComprenderAplicarAnalizarCrearAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 02

Aprendizaje Basado en Problemas45 min · Grupos pequeños

Grupos Pequeños: Comparación Listas-Vectores

En grupos, implementen el mismo algoritmo de suma en listas (Python) y vectores (C# o similar vía bloques). Miden tiempo de ejecución con datos crecientes. Presentan hallazgos en plenaria.

Comparar las características de listas y vectores en diferentes lenguajes de programación.

Consejo de FacilitaciónEn 'Grupos Pequeños: Comparación Listas-Vectores', asegúrese de que cada grupo implemente ambas estructuras con el mismo conjunto de datos para identificar diferencias reales en el código y el comportamiento.

Qué observarEntregar a cada estudiante una tarjeta con dos preguntas: 1. Escribe un ejemplo de cómo usarías una lista en un programa. 2. ¿Cuál es la principal diferencia entre una lista y un vector en cuanto a su tamaño?

AnalizarEvaluarCrearToma de DecisionesAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 03

Aprendizaje Basado en Problemas50 min · Toda la clase

Clase Completa: Simulación de Complejidad

Proyecta un algoritmo de búsqueda lineal en una lista grande simulada con tarjetas. La clase cronometra búsquedas manuales vs optimizadas. Codifican luego en computadoras.

Explicar cómo la elección de una estructura de datos afecta la complejidad de un algoritmo.

Consejo de FacilitaciónEn 'Simulación de Complejidad', cronometre operaciones básicas en listas y vectores para que los estudiantes vivan la diferencia en tiempo de ejecución, conectando teoría con experiencia tangible.

Qué observarPlantear la siguiente pregunta para debate en grupos pequeños: 'Imagina que estás creando un programa para una biblioteca. ¿Qué estructura de datos sería más adecuada para almacenar los títulos de los libros y por qué? Considera si el número de libros puede cambiar con el tiempo.'

AnalizarEvaluarCrearToma de DecisionesAutogestiónHabilidades de Relación
Generar Clase Completa

Actividad 04

Individual: Proyecto Lista de Tareas

Cada estudiante programa una lista de tareas con agregar, eliminar y mostrar funciones. Prueban con 20 ítems y reflexionan sobre escalabilidad en un diario.

Analizar por qué una lista es más eficiente que variables individuales para grandes volúmenes de datos.

Consejo de FacilitaciónPara 'Proyecto Lista de Tareas', proporcione una rúbrica clara con criterios como eficiencia, claridad del código y manejo de datos dinámicos.

Qué observarPresentar a los estudiantes un escenario: 'Necesitas guardar los nombres de 50 estudiantes de tu clase'. Preguntar: '¿Qué estructura de datos usarías, variables individuales, una lista o un vector? Justifica tu respuesta explicando las ventajas o desventajas de tu elección en este caso específico.'

AnalizarEvaluarCrearToma de DecisionesAutogestiónHabilidades de Relación
Generar Clase Completa

Algunas notas para enseñar esta unidad

Enseñar estructuras de datos requiere partir de problemas reales que los estudiantes reconozcan como relevantes. Evite comenzar con definiciones abstractas; en su lugar, use ejemplos cotidianos como listas de compras o inventarios escolares. La comparación constante entre estructuras fortalece la toma de decisiones informada. La investigación muestra que los errores guiados, donde los estudiantes cometen fallos y luego los corrigen con retroalimentación inmediata, generan aprendizajes más duraderos en programación.

Los estudiantes demostrarán comprensión al elegir entre listas y vectores según el problema, implementarán correctamente cada estructura en código y explicarán ventajas como el acceso indexado, la iteración colectiva o la manipulación dinámica de tamaño.


Cuidado con estas ideas erróneas

  • Durante 'Pares: Listas vs Variables Individuales', watch for students who believe that lists are only 'longer variables'.

    Pida a los estudiantes que implementen una tarea sencilla, como sumar 50 números, primero con variables individuales y luego con una lista. Observarán que con variables individuales el código es repetitivo y propenso a errores, mientras que con listas pueden usar bucles eficientes, corrigiendo esta idea mediante evidencia práctica.

  • Durante 'Grupos Pequeños: Comparación Listas-Vectores', watch for students who think vectors only work with numbers.

    Asigne a cada grupo que implemente un vector de strings con los nombres de los estudiantes o títulos de libros. Luego, pídales que modifiquen el programa para convertir los strings a mayúsculas, demostrando que los vectores manejan cualquier tipo de dato y desafiando esta creencia con práctica concreta.

  • Durante 'Simulación de Complejidad', watch for students who assume changing data structures does not impact algorithm speed.

    En la simulación, cronometre operaciones como buscar un elemento o insertar uno nuevo en una lista no ordenada versus un vector. Los estudiantes verán diferencias claras en los tiempos y podrán predecir el impacto de la estructura en la complejidad, usando datos reales para corregir esta idea.


Metodologías usadas en este resumen