问题描述:

给定两个链表,计算出链表对应位置相加的和,如果和大于10要往后进位。用链表返回结果。其实上是一种大数加法。可以把一个大数倒着写存入链表,然后两个链表相加就是所需要的大数相加的和

输入

2 -> 3 -> 5

3-> 4 -> 6

输出

5->7->1->1

Python实现的代码

Class addtwonums(object):

  Def teonum(self, l1,l2):

    Root=n = ListNode(0)

    Carrey = 0

    While l1 or l2 or carrey:

      If l1:
        num1 = l1.val

        L1 =l1.next

      If l2:

        Num2 = l2.val

        L2 =l2.next

      Carrey, val = divmod(num1+num2+carrey, 10)

      N.next = ListNode(val)

      N = n.next

    Return root.next

思考与总结

1.Python中的divmod(a, b)函数,它会返回两个值,第一个值是a//b的值,第二个值是a%b的值,也就是说前者是a除以b的整数部分,后者是a除以b的余数部分

2.python中构建链表的方法:python中没有想c中直接的链表,你需要多大的空间,不需要自己预先设定,只要在定义好的链表后面加上你想要的ListNode(val)就行

比如:

a = b = ListNode(0) #表示a, b 指向一个值为0的链表节点

B.next = ListNode(5) #表示b的下一个节点指向值为5的链表节点

B = b.next

return a

此时会返回 0 -> 5

add two nums的更多相关文章

  1. 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数 例如给定nums = [2,7,11,15],target = 9

    python解决方案 nums = [1,2,3,4,5,6] #假如这是给定的数组 target = 9 #假如这是给定的目标值 num_list = [] #用来装结果的容器 def run(nu ...

  2. 我们为什么不能只用O记号来谈论算法?

    在刷LeetCode-1TwoSum的时候,有个人在论坛留言,大致意思如下: 我的算法击败了90%的人,O(nlgn)算法比O(n)算法快. 我觉得这个人是不懂算法的.让我一步一步解释. # O的含义 ...

  3. BUG-FREE-For Dream

    一直直到bug-free.不能错任何一点. 思路不清晰:刷两天. 做错了,刷一天. 直到bug-free.高亮,标红. 185,OA(YAMAXUN)--- (1) findFirstDuplicat ...

  4. (lintcode全部题目解答之)九章算法之算法班题目全解(附容易犯的错误)

    --------------------------------------------------------------- 本文使用方法:所有题目,只需要把标题输入lintcode就能找到.主要是 ...

  5. 全部leetcode题目解答(不含带锁)

    (记忆线:当时一刷完是1-205. 二刷88道.下次更新记得标记不能bug-free的原因.)   88-------------Perfect Squares(完美平方数.给一个整数,求出用平方数来 ...

  6. [Leetcode] Contains Duplicate III

    Given an array of integers, find out whether there are two distinct indices i and j in the array suc ...

  7. Java中的可变长参数

    可变长参数的定义 与一般方法没多大差别,只不过形参多了...(三个点) 方法名(数据类型 ... 变量名){} 小案例: public class ParamDemo { public static ...

  8. array题目合集

    414. Third Maximum Number 给一个非空的整数数组,找到这个数组中第三大的值,如果不存在,那么返回最大的值.要求时间复杂度为o(n) 例如: Example 1: Input: ...

  9. 315. Count of Smaller Numbers After Self

    You are given an integer array nums and you have to return a new counts array. The counts array has ...

随机推荐

  1. mysql删除重复数据只保留一条

    mysql删除重复数据只保留一条 新建一张测试表: CREATE TABLE `book` ( `id` char(32) NOT NULL DEFAULT '', `name` varchar(10 ...

  2. Socket编程实践(7) --Socket-Class封装(改进版v2)

    本篇博客定义一套用于TCP通信比较实用/好用Socket类库(运用C++封装的思想,将socket API尽量封装的好用与实用), 从开发出Socket库的第一个版本以来, 作者不知道做了多少改进,  ...

  3. java线程池ThreadPoolExecutor 如何与 AsyncTask() 组合使用

    简单说下Executors类,提供的一系列创建线程池的方法: 他们都有两个构造方法 1. --------newFixedThreadPool (创建一个定长线程池,可控制线程最大并发数,超出的线程会 ...

  4. 【翻译】Ext JS最新技巧——2014-8-13

    原文:Top Support Tips Greg Barry:新的框架. 新的文档类型(Doctype) 在Ext JS 5,只支持IE8+,因此不再古力用户使用严格的HTML文档类型.现在,推荐使用 ...

  5. (NO.00001)iOS游戏SpeedBoy Lite成形记(一)

    这是本猫第一个原创iOS游戏,留此为证!看编号貌似要写9万多个,千锤百炼还是太少吧!? ;) 这是一个赛跑游戏,几位选手从起点跑到终点看谁用的时间最少.现在需要实现的功能是: 1.8位选手从起点移动至 ...

  6. ViewPager适配器学习记录( pageAdapter和FragmentPagerAdapter/FragmentStatePagerAdapter))

    1.概述 ViewPager,顾名思义实现控件的滚动功能,是Support-v4的包中类,使用前要先导包.使用的时候跟listView有点相似,需要设置对应的适配器,通常有俩大类 [pageAdapt ...

  7. 【一天一道LeetCode】#38. Count and Say

    一天一道LeetCode系列 (一)题目 The count-and-say sequence is the sequence of integers beginning as follows: 1, ...

  8. FFMPEG结构体分析:AVStream

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

  10. Linux下C语言的调试 - gdb

    调试是每个程序员都会面临的问题. 如何提高程序员的调试效率, 更好更快地定位程序中的问题从而加快程序开发的进度, 是大家共同面对的问题. 可能Windows用户顺口就会说出:用VC呗 :-) , 它提 ...