9.两数相加-链表替身节点
思路:
package main
type ListNode struct {
Val int
Next *ListNode
}
// @solution-sync:begin
func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode {
var i,s int
var res =&ListNode{Val:0}
var now=res
for true {
if i>0{
s=l1.Val+l2.Val+1
i=0
}else{
s=l1.Val+l2.Val
}
if s>=10{
now.Next=&ListNode{Val:s-10}
i=1
}else{
now.Next=&ListNode{Val:s}
}
if l1.Next==nil && l2.Next==nil && i==0 {
break
}
if l1.Next==nil{
l1.Next=&ListNode{Val:0}
}
if l2.Next==nil{
l2.Next=&ListNode{Val:0}
}
l1=l1.Next
l2=l2.Next
now=now.Next
}
return res.Next
}Last updated