11cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice#include <stdio.h>
21cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice#include <stdlib.h>
31cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice#include "bin-trees.h"
41cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice
51cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Ticestatic void
61cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Ticereal_preorder (tree_ptr root)
71cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice{
81cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  if (root == NULL)
91cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice    return;
101cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice
111cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  printf ("%d ", root->data);
121cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  real_preorder (root->left);
131cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  real_preorder (root->right);
141cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice}
151cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice
161cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice
171cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Ticevoid
181cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Ticepre_order_traverse (tree_ptr root)
191cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice{
201cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  printf ("pre-order traversal, with recursion: \n");
211cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  real_preorder (root) ;
221cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice  printf ("\n");
231cc48481a2ca530bab04999da78eddc8a1b98adbCaroline Tice}
24