Chinaunix首页 | 论坛 | 博客
  • 博客访问: 25813
  • 博文数量: 11
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 80
  • 用 户 组: 普通用户
  • 注册时间: 2015-01-30 15:29
文章分类

全部博文(11)

文章存档

2015年(11)

我的朋友
最近访客

分类: C/C++

2015-05-12 17:37:18

递归:
Node * MergeRecursive(Node *head1 , Node *head2){


       if ( head1 == NULL )

              return head2 ;

       if ( head2 == NULL)

              return head1 ;

       Node *head = NULL ;

       if ( head1->data < head2->data )

       {

              head = head1 ;

              head->next = MergeRecursive(head1->next,head2);

       }

       else

       {

              head = head2 ;

              head->next = MergeRecursive(head1,head2->next);

       }

       return head ;

}


非递归:
Node* Merge(Node *head, Node *head1, Node *head2)
{


       Node *tmp=head;

       while(NULL != head1 && NULL != head2)

       {

              if(head1->datadata)

              {

                     tmp->next=head1;

                     tmp=head1;

                     head1=head1->next;

              }

              else

              {

                     tmp->next=head2;

                     tmp=head2;

                     head2=head2->next;

              }

       }

       if(NULL != head1)

       {

              tmp->next=head1;

       }

       if(NULL != head2)

       {

              tmp->next=head2;

       }

       return tmp;

}

阅读(765) | 评论(0) | 转发(0) |
0

上一篇:LVS Nginx HAProxy 优缺点

下一篇:c++基础

给主人留下些什么吧!~~