Daniel Páez
Jonathan Gonzalez Botero
Buen complemento, saludos
Daniel Páez
un placer jonathan, me alegra serte util
Las estructuras de datos son una forma eficiente de almacenar y organizar la información de nuestro programa. Existen diferentes estructuras que vamos a estudiar durante el curso, es muy importante trabajar con una buena estructura que nos ayude a resolver nuestros problemas de la mejor manera posible.
Podemos clasificar las estructuras en dos grandes grupos:
Daniel Páez
Jonathan Gonzalez Botero
Buen complemento, saludos
Daniel Páez
un placer jonathan, me alegra serte util
Karen Paola Diaz Duarte
Brallan Leandro
Esta genial tus notas cornell
Karen Paola Diaz Duarte
Hola brallanleandro, Muchas gracias por tu comentario :)
Juliana Gonzalez
Al momento de resolver problemas a través de código con nuestros algoritmos necesitamos algún mecanismo de guardar los datos por que los programas siempre van a estar trabajando con información.
La forma de almacenar la información va a ser conocida como estructura de datos y de hecho en varios lenguajes ya está implementado como por ejemplo: el array, listas enlazadas, árboles, grafos, entre otros.
Las estructuras de datos se van a dividir en dos grande familiar. Las lineales donde se van a guardar secuencial-mente una detrás de la otra o de la forma lineal en la que sea dada la orden por ej primero los más relevante y después lo otro etc.
Las no lineales como los arboles y grafos, en un árbol tenemos un tronco principal y sus ramificaciones que van surgiendo del troncos. Los grafos son puntos de información que van a estar dispersos por nuestra estructura y van a estar ínter-conectados entre sí.
Las computadoras pueden detectar las adyacencias (vecinos) que datos tiene de vecinos y con esto se puede obtener la información necesaria para desarrollar un algoritmo. Adyacencia es un dato que una computadora va a detectar que está al lado del otro.
Se llamara Matriz de adyacencias.
Bernardo Aguayo Ortega
Es correcto Juliana, buena conclusión
Matías Wasiak
Gracias por el aporte!
Juan Carlos García Esquivel
¿Qué es una estructura de datos? Es la forma en que se almacena la información en una computadora para manipular, buscar e insertar esta información de la manera más eficiente. Clasificación de las Estructuras de Datos Lineales: En una estructura de datos líneas sus elementos forman una secuencia o lista.
No lineales: En estas estructuras información está dispersa y no sigue una secuencia pero si está conectada entre sí, como los árboles y grafo.
Tipos de estructuras de datos
Es una colección de datos del mismo tipo que se almacenan en posiciones consecutivas en memoria y se accede a sus valores por medio de un índice que especifica su posicion.
#En las arquitecturas modernas una dirección de memoria equivale a un byte y cuando se hace referencia a una dirección se hace referencia al byte y no se puede referenciar a un bit específico
Propiedades de un arreglo
Similares a los arrays con la ventaja que no necesitan definir la cantidad de elementos a contener, Estas listas se componen de nodos los cuales tienen dos atributos:
Las listas enlazadas soportan los métodos de: búsqueda, inserción y eliminación. son mejores que los arrays si tu no conoces la cantidad de elementos que vas a insertar pero requieren más espacio en memoria. Para el acceso a los datos los arrays son más rápidos debido a que el index hace referencia a la memoria y nos devuelve los datos sin recorrer todo el array.
Thomas Alexander Riddle Delgado
Gracias, buen resumen!
Juan Carlos García Esquivel
@ThomasARD con gusto :)
Melisa Lozano
Esta forma organizada, estructurada, eficiente y específica de almacenar la información va a ser conocida como una estructura de datos
Ricardo Celis
ProfesorMel! No desistas de tomar el curso!
Esbozos de mi primer codigo para solucionar el problema
¿Como detecta una computadora la adyacencia? ¿Cual es la funcion que nos permite saber eso?
Como encuentro al ruta mas corta entre 0,0 y 2,1
hay adyacencia entre dos puntos cuando la diferencia de coordenas es de solo 1 o 0 en x o en y
Para llegar a un lugar a otro necesitas moverte entre puntos adyacentes
Mientras mas puntos adyacentes necesites para moverte mayor es la distancia entre ambos puntos y mas larga es la ruta
Dicho de otro modo
Mientras menos puntos adyacentes necesites para moverte menos es la distancia entre ambos puntos y mas corta es la ruta
Entonces
Para saber cual es ruta mas corta necesito comparar la cantidad de puntos adyacentes recorridos
(function() { let rutaMasCorta = opcionesDeRuta[0].lenght rutaMasCorta = () => { for (let i = 0; i < opcionesDeRuta.lenght; i++ ) { if(rutaMasCorta < opcionesDeRuta[i].lenght && rutaMasCorta < opcionesDeRuta[i++].lenght ) { rutaMasCorta } else if(opcionesDeRuta[i].lenght < opcionesDeRuta[i++].lenght) { rutaMasCorta = opcionesDeRuta[i].lenght } else { rutaMasCorta = opcionesDeRuta[i++].lenght } } } } return rutaMasCorta )() function hayAdyencencia() { return ( x2 - x1 >== 1 && y2 -y1 <== 1 ) } if ( hayAdyacencia() ) { adyacencia = true } else { adyacenccia = false }
María José Medina
Reinaldo Mendoza
Gran aporte
María Belén Cerón
Hola, alguien sabe como se llama la aplicación que usa el profesor como pizarra?
Miguel Torres
Hello, @mabel-ceron. :D
Me parece que es Autodesk Sketchbook. Tiene una versión gratis para Android y iOS.
Cristobal Nyram
Alguíen sabe donde puedo consulta más material acerca estructura de datos?
Alejandro Giraldo Londoño
Claro que sí dependiendo del material que quieras consumir. Esta masterclass podría ayudarte
Dilan Santiago Ariza Cañon
En esta imagen encuentras diferentes estructuras de datos: !Estructuras de datos
O también puedes mirar en este articulo, es muy claro y especifico para poder entender mejor el tema: Estructuras de Datos - Medium.com
Melisa Lozano
Las estructuras de datos se van a dividir en 2 grandes familias: las lineales y las no lineales.
Ricardo Celis
ProfesorAsí es! hay que evaluar el problema y elegir la adecuada!
Alma Fiesco
Elmer Padilla Espinoza
Alma, una presentacion basica y unica, gracias por compartirla.
Jose Antonio Rojas Ollarves
Adyacencia: Es un dato que una computadora dectara a lado de otro, es decir es como la ubicacion en memoria de una variable, entonces identifica cual es la que esta cerca de ella, a esto se le llama adyacencia.
Jheyson Eduardo Galvis Valencia
En la universidad se me dificultó un poco el curso de estructuras de datos. Espero aquí lograr despejar esas dudas.
Jess Key
Samuel Alejandro Martinez Pita
¡Hola! ¡Está muy bueno el ejemplo de adyacencias!, pero faltó una más...
Serían: CAS - CAF CAS - COM CAF - CAS CAF - COM COM - ESC COM - CAS
Nicolas Alpargatero
Me imagino que cuando se pase a código la dirá, de pronto porque solo se enfocó en llegar a la escuela.
Mauricio Alberto Ortiz Maldonado
Estructura de Datos Como los programas siempre trabajan con información, es necesario una manera de almacenar estos datos. Esta manera de guardar y organizar va a ser llamada como estructura de datos. Podemos ver estas estructuras en mucho lenguaje de programación. Hay dos tipos de estructuras de datos. Lineales: La información se guarda de forma secuencial. No lineales: La información se guarda de forma independiente. Una computadora necesita leer las adyacencias para entender cual es el camino más corto. Adyacencia: Un dato que va a tomar la computadora al lado de cada ubicación. Es decir: (1,1) es adyacente de (0.1) y al mismo tiempo de (2,1). Al recopilarse todas las adyacencias posibles en el caso se crea una matriz de adyacencias.
Pablo Aquino
Carlos Alejandro González Benitez
Los los datos se ejecutan dependiendo del tipo de instrucciones, estos pueden ser dos tipos:
Lineales o secuenciales (cuando las instrucciones se ejecutan una detrás de la otra).
No lineales o selectivas (cuando se ejecutan en función de una condición), también pueden haber aquellas que sean "repetitivas" (que se ejecutan tantas veces según la condición)
Angel Perez
Yo aprendí a programar en c con MikroC para microcontroladores de 8bit
CLASE #4
Te dejo un poco de mi caos y mi orden en base a lo que aprendi y reflexione en esta clase.
Siento como explota mi logica cuando dedico el tiempo a reflexionar
PUNTOS CLAVES:
-Los programas siempre van a estar trabajando con información
Piensa en las estructuras de datos
Tiene dos grandes familias de estructuras de datos:
lineales --la informacion se guarda en una secuencia lineal
No lineales la informacion se guarda en secuencias independientes e interconectadas
--arboles --grafos
A continuacion mostrare varias estructuras de datos ejemplificados para solucionar esto:
Yo Quiero llegar de mi casa a la escuela en la ruta mas corta
Esto es una matriz de datos La cual a su vez contiene lista de datos
[ [2,0 NULL], [2,1 NULL], [2,2 NULL], [1,0 CAFE], [1,1 COMD], [2,1 ESCL], [0,0 CASA], [1,0 NULL], [2,0 NULL], ]
Esto es una matriz de adyacencias
[ [casa, cafe], [cafe,casa], [casa, comd], [comd,escl], [casa,comd] [cafe,comd] ]
=====================
Esto es una lista con indices
{ casa:[0,0], cafe:[1,0], comd:[1,1], escl:[2,1] }
Opciones de ruta (Mezclando estructuras anteriores)
[ ruta_1 [ [casa, cafe], [cafe, comd], [comd, escl] ], ruta_2 [ [casa,comd], [comd,escl] ] ]