Free up the nodes using Postorder traversal!.
void remove(node *head) { if(head==0) { return; } remove(head->left); remove(head->right); delete head; }
Re: Write a C program to delete a tree (i.e, free up its nodes)
void remove(node *head)
{
if(head==0)
{
return;
}
remove(head->left);
remove(head->right);
delete head;
}