每日一题(day2)

来源:互联网 发布:协方差矩阵主对角线 编辑:程序博客网 时间:2024/05/18 22:12

Leetcode002

Add Two Numbers问题
知识更新:链表结构

    ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {        int carry = 0;        int sum = 0;        ListNode* res = new ListNode(-1);        ListNode* cur = res;        ListNode* pl1 = l1;        ListNode* pl2 = l2;        while (1)        {            if (pl1&&pl2)            {                sum = pl1->val + pl2->val + carry;                cur->next = new ListNode(sum % 10);                carry = sum / 10;                cur = cur->next;                pl1 = pl1->next;                pl2 = pl2->next;                continue;            }            if (pl1)            {                sum = pl1->val + carry;                cur->next = new ListNode(sum % 10);                carry = sum / 10;                cur = cur->next;                pl1 = pl1->next;                continue;            }            if (pl2)            {                sum = pl2->val + carry;                cur->next = new ListNode(sum % 10);                carry = sum / 10;                cur = cur->next;                pl2 = pl2->next;                continue;            }            if (carry)                cur->next = new ListNode(carry);            break;        }        ListNode* temp = res->next;        delete res;        return temp;    }

注意问题:链表首位置以及新节点创建

0 0
原创粉丝点击