int main(){ node *head; int n; head=NULL; int i; for(i=11;i<=18;i++) head=insertInDll(head,i); printDLL(head); //head=reverseList(head); //printDLL(head); node *root=sortedToBST(head); printf("\nInorder traversal is:"); inorder(root); printf("\n"); return 0; }
// Main Function, controls program flow int main() { CNode *pHeadC; // For the Doubly linked list CNode *pRoot; // For the binary tree // Initializing doubly linked list pHeadC = (CNode*)malloc(sizeof(CNode)); pHeadC->pNext = NULL; pHeadC->pPrevious = NULL; // Let the user know what we are doing printf("\n\nPlease enter a series of integers.\n"); printf("These will first be stored in a doubly linked list,\n"); printf("then converted into a binary tree.\n"); pHeadC = getNumbers(pHeadC); printf("\nGreat! Before we begin, let's print the doubly linked list: \n"); printDLL(pHeadC); pRoot = convDLLtoBT(pHeadC); printf("\n\nLooks good! Now, let's convert that doubly linked list into a binary tree.\n"); printf("\nFirst, let's print our binary tree in order:\n"); printTree(pRoot); printf("\n\nNow, let's print our binary tree in preorder walk traversal:\n"); printTreePreOrder(pRoot); printf("\n\nNow, let's print our binary tree in postorder walk traversal:\n"); printTreePostOrder(pRoot); freeTreeMem(pRoot); printf("\n\n"); return 0; }