1、两数相加:https://leetcode-cn.com/problems/add-two-numbers/
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
int carry=0;
ListNode newL=new ListNode(0);
ListNode head=newL;
do{
int x=l1==null?0:l1.val;
int y=l2==null?0:l2.val;
int sum=x+y+carry;
carry=sum/10;
sum%=10;
newL.next=new ListNode(sum);
newL=newL.next;
if(l1!=null){
l1=l1.next;
}
if(l2!=null){
l2=l2.next;
}
}while(l1!=null||l2!=null);
if(carry!=0){
newL.next=new ListNode(carry);
newL=newL.next;
}
return head.next;
}
2、反转链表:https://leetcode-cn.com/problems/reverse-linked-list/
public ListNode reverseList(ListNode head) {
ListNode prev = null;
ListNode curr = head;
ListNode next =null;
while (curr != null) {
next = curr.next;
curr.next = prev;
prev = curr;
curr = next;
}
return prev;
}