创建节点的时候直接完成返回结果的链表构建,后续无需再翻转: ListNode res = null; int carry = 0; while (reversedHead1 != null || reversedHead2 != null || carry != 0) { int num1 = reversedHead1 == null ? 0 : reversedHead1.val; int num2 = reversedHead2 == null ? 0 : reversedHead2.val; int sum = num1 + num2 + carry; carry = sum / 10; sum = sum % 10; ListNode addedNode = new ListNode(sum); addedNode.next = res; res = addedNode; if (reversedHead1 != null) { reversedHead1 = reversedHead1.next; } if (reversedHead2 != null) { reversedHead2 = reversedHead2.next; } } return res;
1

相关推荐

牛客网
牛客企业服务