ADA - urgente

 
Vista:

urgente

Publicado por montse (1 intervención) el 03/05/2006 21:21:25
Hola!! necesito ayuda para implementar una funcion para arboles binarios en ADA, debe ser un recorrido en inorden, agregadme al messenger!! [email protected], URGENTE!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Implementando el recorrido inorden en un árbol binario

Publicado por Alejandro (155 intervenciones) el 30/06/2023 16:56:02
Aquí tienes un ejemplo de cómo implementar el recorrido inorden en un árbol binario en Ada:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
-- Definición del tipo de árbol binario
type Nodo is record
   Valor : Integer;
   Izquierdo : access Nodo;
   Derecho : access Nodo;
end record;
 
type Arbol is access Nodo;
 
-- Función recursiva para el recorrido inorden
procedure Recorrido_Inorden (N : in Arbol) is
begin
   if N /= null then
      -- Recorre el subárbol izquierdo
      Recorrido_Inorden (N.Izquierdo);
 
      -- Procesa el valor del nodo actual
      Ada.Text_IO.Put (N.Valor & " ");
 
      -- Recorre el subárbol derecho
      Recorrido_Inorden (N.Derecho);
   end if;
end Recorrido_Inorden;
 
-- Ejemplo de uso
procedure Main is
   Arbol_Raiz : Arbol := null;
begin
   -- Construye el árbol binario
   -- Aquí debes insertar tus propios nodos y configurar los punteros Izquierdo y Derecho correctamente
 
   -- Realiza el recorrido inorden
   Recorrido_Inorden (Arbol_Raiz);
end Main;

En este ejemplo, se define un tipo de registro `Nodo` que representa un nodo en el árbol binario. Cada nodo contiene un valor entero (`Valor`) y punteros a los subárboles izquierdo (`Izquierdo`) y derecho (`Derecho`).

Luego se define un tipo de acceso `Arbol` que se utiliza para crear un puntero a un nodo del árbol.

La función `Recorrido_Inorden` es una función recursiva que realiza el recorrido inorden del árbol. Comienza verificando si el nodo actual no es nulo. Luego, realiza el recorrido inorden del subárbol izquierdo, procesa el valor del nodo actual y finalmente realiza el recorrido inorden del subárbol derecho.

En el procedimiento `Main`, debes construir tu propio árbol binario y luego llamar a `Recorrido_Inorden` pasando la raíz del árbol como argumento.

Recuerda adaptar este código a tus necesidades particulares, agregando los nodos y configurando los punteros Izquierdo y Derecho de manera adecuada.

Espero que esta solución te sea útil para implementar el recorrido inorden en un árbol binario en Ada. ¡Buena suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar