Recorrido y búsqueda en arboles Según el libro de T. Parajan nos dice que: El recorrido de un árbol es el proceso para recorrer (desplazarse a lo largo) un árbol de manera sistemática a fin de que cada vértice se visite y procese exactamente una vez .Hay tres métodos para recorrer un árbol binario a saber recorridos de preorden , de inorden y de posorden. Según el libro de JOHNSONBAUGH Richard pag. 415 nos dice que : La búsqueda a lo ancho y la búsqueda a profundidad proporcionan formas de recorrer un arbol , es decir de recorrerlo de manera sistemática de modo que cada vértice sea visitado exactamente una vez. Recorrido preorden : Para recorrer un árbol binario no vació en preorden, hay que realizar las siguientes operaciones recursivamente en cada nodo, comenzando con el nodo de raiz: 1.Visite la raíz 2.Atraviese el sub-arbol izquierdo 3.Atraviese el sub-arbol derecho Preorden: ABDGEHICFJK Recorrido inorden : Para recorrer un arbol bin...
Árboles de expresiones Los árboles de expresiones son estructuras de datos que definen código. Se basan en las mismas estructuras que usa un compilador para analizar el código y generar el resultado compilado. A medida que vaya leyendo este tutorial, observará cierta similitud entre los árboles de expresiones y los tipos usados en las API de Roslyn para compilar analizadores y correcciones de código. (Los analizadores y las correcciones de código son paquetes de NuGet que realizan un análisis estático en código y pueden sugerir posibles correcciones para un desarrollador). Los conceptos son similares y el resultado final es una estructura de datos que permite examinar el código fuente de forma significativa. En cambio, los árboles de expresiones se basan en un conjunto de clases y API totalmente diferente a las API de Roslyn. Veamos un ejemplo sencillo. Aquí tiene una línea de código: var sum = 1 + 2; Si fuera a analizarlo como un árbo...
¿Qué es una máquina de Turing y cómo funciona? La llamada “Máquina de Turing” es en realidad un modelo matemático consistente en un autómata que es capaz de “implementar cualquier problema matemático expresado a través de un algoritmo”. A pesar de esta definición tan complicada, en realidad la máquina de Turing destaca por su simplicidad pues manipula símbolos sobre una tira de cinta siguiendo una serie de reglas. A pesar de esta simplicidad, una máquina de Turing puede adaptarse para que simule la lógica de cualquier algoritmo de computador, de ahí su enorme potencial y valor . Como su propio nombre indica, la máquina de Turing fue creada por el matemático inglés Alan Turing, un genio en muchos campos pero especialmente en la criptografía y la lógica. Originalmente la denominó “Máquina de Computación Lógica” siendo una de las mayores aportaciones pues despejó el camino de la ciencia de la Computación, de la Informática moderna. Una Máquina de Turing const...