2.两数相加 golang

蔡_0703 · · 1875 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode {
   if l1 == nil {
        return l2
    }
    if l2 == nil {
        return l1
    }
    sum := l1.Val + l2.Val
    jw := sum/10
    sum = sum%10
    head := &ListNode{sum,nil}
    tmp := head
    val1 := 0
    val2 := 0
    l1 = l1.Next
    l2 = l2.Next
    for l1 != nil || l2 != nil || jw != 0 {
        if l1 == nil {
            val1 = 0
        } else {
            val1 = l1.Val
            l1 = l1.Next
        }
        if l2 == nil {
            val2 = 0
        } else {
            val2 = l2.Val
            l2 = l2.Next
        }
        sum = val1 + val2 + jw
        jw = sum/10
        sum = sum%10
        tmp.Next = &ListNode{sum,nil}
        tmp = tmp.Next
    }
    return head
}

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:蔡_0703

查看原文:2.两数相加 golang

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1875 次点击  
加入收藏 微博
0 回复
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传