/*
* 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)
* 输出:7 -> 0 -> 8
* 原因:342 + 465 = 807
*/
package leetcode;
import java.util.Scanner;
import NodeTest.Node;
public class APP1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner reader=new Scanner(System.in);
Node node1=new Node();
Node node2=new Node();
node1.setLinkedByHead(reader);
node1.printLink();
node2.setLinkedByHead(reader);
node2.printLink();
Node m=addNode(node1,node2);
m.printLink();
}
public static Node addNode(Node l1,Node l2)
{
Node p=new Node(0);
Node cur=p;
int carry=0;
while(l1!=null||l2!=null)
{
int x= l1==null?0:l1.data;
int y= l2==null?0:l2.data;
int sum=x+y+carry;
carry=sum/10;
int num=sum%10;
cur.next=new Node(num);
cur=cur.next;
if(l1 != null)
l1 = l1.next;
if(l2 != null)
l2 = l2.next;
}
if(carry==1)
{
cur.next = new Node(1);
}
return p.next;
}
}
leetcode 之两数相加 算法--链表
最新推荐文章于 2024-09-16 06:54:08 发布