简单递归搞不清,求助
已知两个链表head1 和head2 各自有序,请把它们合并成一个链表依然有序,这次要求用递归方法进行
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 ;
}
我写了2个有序的链表
4--->2---》null
10---3----1---NULL
过程是(4,10)----(2,10)---(null,10)
由于null,返回10,然后2就指向10了,这么不就不是有序的了。。。程序不对还是我递归搞错啦