用c语言编写 设带头结点的线性表中元素值为非零正整数,试写出: (1)求线性表中所有元素值之和的递归函数(空表返回0) (2)求线性表中元素最大值的递归函数(空表返回0) (3)求线性表中元素个数的递归函数(空表返回0)
时间: 2024-05-04 20:16:39 浏览: 83
好的,我明白了,我将使用ChitGPT回答您的问题。关于题目,我来逐一回答:
(1)求线性表中所有元素值之和的递归函数(空表返回0):
```
int linkedListSum(ListNode* head) {
if (head == NULL) {
return 0;
} else {
return head->val + linkedListSum(head->next);
}
}
```
(2)求线性表中元素最大值的递归函数(空表返回0):
```
int linkedListMax(ListNode* head) {
int maxVal = 0;
if (head == NULL) {
return 0;
} else {
maxVal = linkedListMax(head->next);
return head->val > maxVal ? head->val : maxVal;
}
}
```
(3)求线性表中元素个数的递归函数(空表返回0):
```
int linkedListCount(ListNode* head) {
if (head == NULL) {
return 0;
} else {
return 1 + linkedListCount(head->next);
}
}
```
以上是使用C语言编写的,带头结点的线性表中,元素值为非零正整数的三个递归函数。如有需要,可以进行参考。
阅读全文