Академический Документы
Профессиональный Документы
Культура Документы
Nombre de la Licenciatura
Ing. En sistemas computacionales
Matrícula
000577215
Nombre de la Tarea
Actividad de la semana 6
Unidad 4
AÁ rboles
Fecha
04/12/2018
Unidad 4: Árboles
Algoritmos y estructuras de datos
¿Sabías qué….?
Las árboles binarios son utilzados para comprimir datos, especificamente son utilizados en la
codificación Huffman que es usado ampliamente ya que es un sistema válido para la
compresión y posterior transmisión de cualquier dato en formato digital, pudiendo aplicarse
a faxes, modems, redes de computadoras y televisión.
ACTIVIDAD 6
Objetivos:
Instrucciones:
Después de revisar los videos y los recursos siguientes debes desarrollar la actividad 6.
Lectura
Como programar en C# (Deitel y Deitel, 2007), capitulo 24: Estructuras de
datos (págs. 984-997)
2
Unidad 4: Árboles
Algoritmos y estructuras de datos
Forma de evaluacioé n:
Criterio Ponderación
Presentación 10%
Desarrollo de la actividad:
Ejercicio :
Tu tarea consiste en modificar el proyecto (descargar aquí árboles) y con base a ello realizar
un programa de consola en C# que ejecute lo siguiente:
Arboles
3
Unidad 4: Árboles
Algoritmos y estructuras de datos
Introducción:
Un árbol es una estructura de datos bidimensional, no lineal con propiedades especiales. Los
nodos de un árbol contienen 2 o más enlaces. Los arboles cuyos nodos contienen 2 enlaces de
los cuales uno, ambos o ninguno puede ser “null”. El nodo raíz es el primer nodo de un árbol,
cada enlace en el nodo raíz hace referencia a un hijo. El hijo izquierdo es el primer nodo en el
subárbol izquierdo y el hijo derecho es el primer nodo en el subárbol derecho; los hijos de un
nodo específico se llaman hermanos. Un nodo sin hijos se llama nodo hoja. Por lo general los
científicos computacionales dibujan los arboles partiendo desde el nodo raíz, hacia abajo;
exactamente lo opuesto a la manera en que crecen la mayoría de los arboles reales.
Código
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArbolBinarioOrdenado1
{
public class ArbolBinarioOrdenado
{
class Nodo
{
public int info;
public Nodo izq, der;
}
Nodo raiz;
public ArbolBinarioOrdenado()
{
raiz = null;
}
4
Unidad 4: Árboles
Algoritmos y estructuras de datos
nuevo.der = null;
if (raiz == null)
raiz = nuevo;
else
{
Nodo anterior = null, reco;
reco = raiz;
while (reco != null)
{
anterior = reco;
if (info < reco.info)
reco = reco.izq;
else
reco = reco.der;
}
if (info < anterior.info)
anterior.izq = nuevo;
else
anterior.der = nuevo;
}
}
5
Unidad 4: Árboles
Algoritmos y estructuras de datos
6
Unidad 4: Árboles
Algoritmos y estructuras de datos
Conclusiones:
En este tema se aprendió que los tipos simples son tipos “struct” por valor, pero de todas
formas pueden usarse en cualquier parte en la que se esperen los objetos “object” en un
programa, debido a las conversiones “boxing” y “unboxing”. También se aprendió que las listas
enlazadas son colecciones de elementos de datos que se enlazan entre sí en una cadena; de
igual manera en un programa se pueden realizar inserciones y eliminaciones en cualquier parte
de una lista enlazada. También vimos arboles binarios de búsqueda que facilita las búsquedas
de alta velocidad y la ordenación de los datos, además de una eficiente eliminación de los
valores duplicados.
Bibliografía:
Cómo programar en C# (Deitel & Deitel, 2007)
http://aulavirtual.utel.edu.mx/lib/ebook_pearson.php?id_ebook_pearson=158