注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号 
x
虽然很简单的题,我这个代码过不了,我也检查不出来。思路是分别把list1 和list2转换成数值,相加,然后把数值转换成linkedlist。
Input:
[9]
[1,9,9,9,9,9,9,9,9,9]
我的output
[8,0,4,5,6,0,0,1,4,1]
正确的output
[0,0,0,0,0,0,0,0,0,0,1]
代码:
class Solution {
public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
int num1=0,num2=0;
int index1=1;
while(l1!=null){
num1=num1+index1*l1.val;
l1=l1.next;
index1=index1*10;
}
int index2=1;
while(l2!=null){
num2=num2+index2*l2.val;
l2=l2.next;
index2=index2*10;
}
int sum=num1+num2;
if(sum==0) {
ListNode res=new ListNode(0);
return res;
}
ListNode pre=new ListNode(0);
ListNode dummy=pre;
while(sum>0){
ListNode digit=new ListNode(sum%10);
sum=sum/10;
pre.next=digit;
pre=digit;
}
return dummy.next;
}
}
万分感谢!
|