线性链接列表递归

时间:2015-02-16 20:51:44

标签: c++ list recursion linear

我正在尝试编写一个递归函数,它将线性链表中的第一个和最后一个节点数据相加并返回结果。但是,我似乎只是获得了第一个的价值。请帮忙

int sum(node * & head)
{
  if(!head)
    return 0;
  if(!head->next)
    return head->data;
  return sum(head->next);
  return head->data + sum(head->next);
}

1 个答案:

答案 0 :(得分:2)

这是对语言的简单理解:

return sum(head -> next);


// This will never execute because of the above return^
return head -> data + sum(head -> next);