简单递归搞不清,求助
已知两个链表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了,这么不就不是有序的了。。。程序不对还是我递归搞错啦
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了,这么不就不是有序的了。。。程序不对还是我递归搞错啦
...全文
相关推荐
abap简单递归算法
本文将深入探讨一个ABAP中的简单递归算法——计算阶乘,并通过SE38报表的形式进行展示。#### 二、递归算法简介递归算法是一种通过调用自身来解决问题的方法。
简单的C语言程序 递归逆序整数
根据给定的文件信息,我们可以总结出以下关于“简单的C语言程序:递归逆序整数”的相关知识点:### C语言基础概念1.
Java递归算法简单示例两则
Java递归算法简单示例两则Java递归算法是一种常用的算法设计方法,通过将问题分解为小问题,逐步解决,小问题的解决方法和大问题的解决方法相同,这样可以将复杂的问题简化为简单的问题。
javascript如何用递归写一个简单的树形结构示例
在JavaScript中,构建树形结构通常涉及到递归调用,特别是在处理嵌套的数据时。这里我们探讨如何使用递归来创建一个简单的树形结构,并展示如何将这个结构转换为HTML列表。首先,我们要处理的数据
简单的递归算法
### 知识点详解:简单的递归算法与斐波那契数列#### 一、递归算法概览递归算法是一种通过调用自身来解决问题的方法,它将复杂问题分解为更小的子问题,直到子问题简单到可以直接求解为止。


