There few errors in your code rest is fine.I have updated in line On Fri, Jul 30, 2010 at 9:22 AM, Priyanka Chatterjee <dona.1...@gmail.com>wrote:
> > > On 30 July 2010 02:59, Priyanka Chatterjee <dona.1...@gmail.com> wrote: > >> Algo: 1. find height of tree >> 2. do level order traversal >> i> at each level store the address of each tree node in the >> data part of a linked node and form linked list of the nodes >> ii> store the header of a linked list at a certain level in >> an array >> 3. return array.// gives final structure >> >> >> complexity - T(n) =O(n) >> S(n)=O(h+n ) //h=height of tree >> >> //CODE >> >> //tree structure >> struct node { >> int data; >> struct node * left, *right}; >> >> // linked list structure >> struct linkNode{ >> struct node * data; >> struct linkNode * next; >> } >> >> struct linkNode** func(struct node * root){ >> >> struct linkNode ** array; >> >> int i, h=height(root); >> for(i=1;i<=h;i++) >> array[i-1]=levelOrderTraversal(root, i); >> >> return array;// final tree structure >> } >> >> //max height of tree >> int height(struct node *root){ >> int hL=height(root->left); >> int hR=height(root->right); >> return 1+ (HR>HL?HR:HL);//precedence of addition operator is greater then >> a terenery >> } >> >> >> >> struct nodelink* levelOrderTraversal(struct node*root, int level){ >> if(root==NULL) return NULL; >> >> if (level==1) >> return createLinkNode(root); // create a node of a singly l >> >> >> struct LinkNode *ptr; >> if(level>1){ >> struct nodeLink * ptr1, *ptr2; >> ptr1=levelOrderTraversal(root->left,level-1); >> ptr2=levelOrderTraversal(root->right,level-1); >> > > if(ptr1==NULL && ptr2==NULL) return NULL; > if(ptr1==NULL) return ptr2; > if(ptr2==NULL) return ptr1; > //updated.. while(ptr1->next) ptr1=ptr1->next ptr1->next=ptr2; return ptr1; > > /*ptr1->next=ptr2; > > return ptr2;*/ > >> } >> >> } >> >> > >> struct linkNode * createLinkNode(struct node * root){ >> >> struct linkNode* newNode=(struct linkNode*) malloc(sizeof(struct >> linkNode)); >> >> newNode->data=root; >> >> newNode->next=NULL; >> >> } >> >> >> >> -- >> Thanks & Regards, >> Priyanka Chatterjee >> Final Year Undergraduate Student, >> Computer Science & Engineering, >> National Institute Of Technology,Durgapur >> India >> http://priyanka-nit.blogspot.com/ >> > > > > -- > Thanks & Regards, > Priyanka Chatterjee > Final Year Undergraduate Student, > Computer Science & Engineering, > National Institute Of Technology,Durgapur > India > http://priyanka-nit.blogspot.com/ > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algoge...@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > -- Thanks & Regards Nikhil Agarwal Senior Undergraduate Computer Science & Engineering, National Institute Of Technology, Durgapur,India http://tech-nikk.blogspot.com http://beta.freshersworld.com/communities/nitd -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algoge...@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.