题解 | #牛牛的单链表求和#

牛牛的单链表求和

https://www.nowcoder.com/practice/a674715b6b3845aca0d5009bc27380b5

#include <stdio.h>
#include <stdlib.h>

typedef struct Node {
    int data;
    struct Node* next;
}Node;

// 链表初始化
Node* initList() {
    Node* list = (Node*)malloc(sizeof(Node));
    list->next = NULL;
    list->data = 0;
    return list;
}

// 尾插法
void tailInsert(Node* list, int data) {
    Node* node = (Node*)malloc(sizeof(Node));
    node->data = data;
    node->next = NULL;

    Node* head = list; // 指针移动到第一个节点的位置
    while (head->next != NULL) {
        head = head->next;
    }

    head->next = node;
    list->data ++ ;
}

// 链表元素求和
int getSum(Node* list) {
    int sum = 0;
    Node* head = list->next;
    while (head) {
        sum += head->data;
        head = head->next;
    }
    return sum;
}
int main()
{

    int n;
    scanf("%d", &n);

    Node* list = initList();

    for (int i = 0; i < n; i ++ )
    {
        int x;
        scanf("%d", &x);

        tailInsert(list, x);
    }

    printf("%d", getSum(list));

    return 0;
}

全部评论

相关推荐

10-09 00:50
已编辑
长江大学 算法工程师
不期而遇的夏天:1.同学你面试评价不错,概率很大,请耐心等待;2.你的排名比较靠前,不要担心,耐心等待;3.问题不大,正在审批,不要着急签其他公司,等等我们!4.预计9月中下旬,安心过节;5.下周会有结果,请耐心等待下;6.可能国庆节前后,一有结果我马上通知你;7.预计10月中旬,再坚持一下;8.正在走流程,就这两天了;9.同学,结果我也不知道,你如果查到了也告诉我一声;10.同学你出线不明朗,建议签其他公司保底!11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务