LeetCode T2 两数相加
开始做题了!
简单的模拟题 复习java基础
链表
要有两个引用对象,起到指针的作用,指向链表的head和当前所在位置cur。
Java中的对象和引用
Listnode pre = new Listnode();
new Listnode()在堆空间里创建了一个Listnode对象。
Listnode pre 创建了一个引用变量,储存在堆栈里。
同一个对象被多个引用变量引用,共同影响这个对象本身。
代码
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
ListNode head = new ListNode();
ListNode cur = head;
int carry=0;
while(l1!= null || l2!=null || carry!=0)
{
int n1 = l1 == null ? 0 : l1.val;
int n2 = l2 == null ? 0 : l2.val;
int temp = n1+n2+carry;
cur.next = new ListNode(temp % 10);
carry= temp / 10;
cur=cur.next;
if (l1!=null)
l1=l1.next;
if (l2!=null)
l2=l2.next;
}
head=head.next;
return head;
}
}
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!