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

牛牛的双链表求和

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

#include <iostream>
using namespace std;
struct Node
{
    int val;
    Node* next;
    Node(): val(0), next(nullptr) {}
    Node(int val): val(val), next(nullptr) {}
    Node(int val, Node* next): val(val), next(next) {}
} ;

void createList(Node* dummy, int n)
{
    int i = 0;
    Node* node = dummy;
    while (i != n)
    {
        int d;
        cin >> d;
        node->next = new Node(d);
        node = node->next;
        i++;
    }
}

void addList(Node* dummy1, Node* dummy2)
{
    Node* node1 = dummy1->next;
    Node* node2 = dummy2->next;
    while (node1 != nullptr && node2 != nullptr)
    {
        node2->val = node2->val + node1->val;
        node1 = node1->next;
        node2 = node2->next;
    }
}

void printList(Node* dummy)
{
    Node* node = dummy->next;
    while (node != nullptr)
    {
        cout << node->val << " ";
        node = node->next;
    }
}
int main() {
    int n;
    cin >> n;

    Node* dummy1 = new Node();
    Node* dummy2 = new Node();
    createList(dummy1, n);
    createList(dummy2, n);
    addList(dummy1, dummy2);
    printList(dummy2);
    return 0;

}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务