Leetcode_2. Add_Two_Number
2. Add_Two_Number
用两个非空链表分别表示两个非负整数,链表的节点表示数字的位,链表头表示数字的低位,链表尾表示数字高位。求两个链表所表示数字的和。
比如:
Input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
Output: 7 -> 0 -> 8
Explanation: 342 + 465 = 807.
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode {
var over = 0
var head, tmp *ListNode
for l1 != nil && l2 != nil {
if head == nil {
tmp = new(ListNode)
head = tmp
} else {
tmp.Next = new(ListNode)
tmp = tmp.Next
}
tmp.Val = l1.Val + l2.Val + over
over = tmp.Val / 10
tmp.Val -= over * 10
l1 = l1.Next
l2 = l2.Next
}
for l1 != nil {
if head == nil {
tmp = new(ListNode)
head = tmp
} else {
tmp.Next = new(ListNode)
tmp = tmp.Next
}
tmp.Val = l1.Val + over
over = tmp.Val / 10
tmp.Val -= over * 10
l1 = l1.Next
}
for l2 != nil {
if head == nil {
tmp = new(ListNode)
head = tmp
} else {
tmp.Next = new(ListNode)
tmp = tmp.Next
}
tmp.Val = l2.Val + over
over = tmp.Val / 10
tmp.Val -= over * 10
l2 = l2.Next
}
if over != 0 {
if tmp == nil {
tmp = new(ListNode)
head = tmp
} else {
tmp.Next = new(ListNode)
tmp = tmp.Next
}
tmp.Val = over
}
return head
}
Leetcode_2. Add_Two_Number的更多相关文章
- [LeetCode_2] Add Two Numbers
LeetCode: 2. Add Two Numbers /** * Definition for singly-linked list. * struct ListNode { * int val; ...
- python 基础部分重点复习整理2
把这里的题目争取刷一遍 博客记录 python的ORM框架peewee SQLAlchemy psycopg2 Django 在1 的基础上,重点突出自己以前没注意的,做到精而不杂!!! Python ...
- day3-课堂代码
# a = ('哈哈', 'xixi', 'hehe') # print(a[0]) # print(a[0:2]) # # # 列表 # a = ['哈哈', 'xixi', 'hehe', 1, ...
随机推荐
- vue中监听页面滚动和监听某元素滚动
①监听页面滚动 在生命周期mounted中进行监听滚动: mounted () { window.addEventListener('scroll', this.scrollToTop) }, 在方法 ...
- Java中的集合框架-Map
前两篇<Java中的集合框架-Commection(一)>和<Java中的集合框架-Commection(二)>把集合框架中的Collection开发常用知识点作了一下记录,从 ...
- Docker 常用命令——镜像
Docker 常用命令 帮助命令 docker version --版本信息 docker info --详细信息 docker --help --帮助 镜像命令 1.doc ...
- 获取 iOS APP 内存占用的大小
当我们想去获取 iOS 应用的占用内存时,通常我们能找到的方法是这样的,用 resident_size: #import <mach/mach.h> - (int64_t)memory ...
- 由使用request-promise-native想到的异步处理方法
由使用request-promise-native想到的异步处理方法 问题场景 因为js语言的特性,使用node开发程序的时候经常会遇到异步处理的问题.对于之前专长App开发的我来说,会纠结node中 ...
- js中改变this指向的call、apply、bind 方法使用
前言: 由于js 中this的指向受函数运行环境的影响,指向经常改变,使得开发变得困难和模糊,所以在封装sdk,写一些复杂函数的时候经常会用到this 指向绑定,以避免出现不必要的问题,call.ap ...
- functional filter()
#include "pch.h" #include <iostream> #include <deque> #include <string> ...
- 『ACM C++』 PTA 天梯赛练习集L1 | 021-024
忙疯警告,这两天可能进度很慢,下午打了一下午训练赛,训练赛的题我就不拿过来的,pta就做了一点点,明天又是满课的一天,所以进度很慢啦~ -------------------------------- ...
- 模板——STL队列
C++ STL queue 容器优先队列&&队列 队列 #include<queue> #include<iostream> using namespace s ...
- Linux相关网络命令
1.简述osi七层模型和TCP/IP四层模型 OSI七层模型 TCP/IP四层模型 2.简述iproute家族命令 ip命令: ip [OPTIONS] OBJECT {COMMAND|help} i ...