C/C++教程

LeetCode.2 两数相加

本文主要是介绍LeetCode.2 两数相加,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
 1 /**
 2  * Definition for singly-linked list.
 3  * public class ListNode {
 4  *     int val;
 5  *     ListNode next;
 6  *     ListNode() {}
 7  *     ListNode(int val) { this.val = val; }
 8  *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 9  * }
10  */
11 class Solution {
12     public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
13         int temp = 0;
14         ListNode head = new ListNode();
15         ListNode res = head;
16         while(l1 != null || l2 != null){
17             int x = temp;
18             temp = 0;
19             if(l1 != null){
20                 x += l1.val;
21                 l1 = l1.next;
22             }
23             if(l2 != null){
24                 x += l2.val;
25                 l2 = l2.next;
26             }
27             if(x / 10 > 0){
28                 x %= 10;
29                 temp = 1;
30             }
31             res.next = new ListNode(x);
32             res = res.next;
33         }
34         if(temp > 0) res.next = new ListNode(1);
35         return head.next;
36     }
37 }

 

这篇关于LeetCode.2 两数相加的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!