首页 > 学院 > 开发设计 > 正文

leetcode 2.Add Two Numbers

2019-11-10 18:24:01
字体:
来源:转载
供稿:网友

题意:两个链表相加,每个链表代表一个逆序排列的数字。如2->3->5加3->5表示532+53得5->8->5

分析:同时遍历两个链表,相加,注意进位。

public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode re=new ListNode(0); ListNode cur=re; int flag=0,num1=0,num2=0; while (l1!=null||l2!=null) { num1=l1==null?0:l1.val; num2=l2==null?0:l2.val; ListNode node=new ListNode((num1+num2+flag)%10); flag=(num1+num2+flag)/10; cur.next=node; cur=node; if(l1!=null)l1=l1.next; if(l2!=null)l2=l2.next; } //最高位进位 if(flag==1){ cur.next=new ListNode(1); cur=cur.next; } cur.next=null; return re.next; }
上一篇:poj2039

下一篇:mybatis 根据条件查询

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表