翻转单链表

【算法系列 一】 Linked List

纵饮孤独 提交于 2019-12-07 13:08:03
1. 给定两个链表,分别表示两个非负整数。它们的数字逆序存储在链表中,且每个结点只存储一个数字,计算两个数的和,并且返回该链表( Leetcode 2 )。 Input: (2 -> 4 -> 3) + (5 -> 6 -> 4) Output: 7 -> 0 -> 8 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { int val = (l1.val + l2.val) % 10; int flag = (l1.val + l2.val) / 10; ListNode l3 = new ListNode(val); ListNode res = l3; while (l1.next != null && l2.next != null) { l1 = l1.next; l2 = l2.next; val = (l1.val + l2.val + flag) % 10; flag = (l1.val +