add two nums
问题描述:
给定两个链表,计算出链表对应位置相加的和,如果和大于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的更多相关文章
- 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数 例如给定nums = [2,7,11,15],target = 9
		python解决方案 nums = [1,2,3,4,5,6] #假如这是给定的数组 target = 9 #假如这是给定的目标值 num_list = [] #用来装结果的容器 def run(nu ... 
- 我们为什么不能只用O记号来谈论算法?
		在刷LeetCode-1TwoSum的时候,有个人在论坛留言,大致意思如下: 我的算法击败了90%的人,O(nlgn)算法比O(n)算法快. 我觉得这个人是不懂算法的.让我一步一步解释. # O的含义 ... 
- BUG-FREE-For Dream
		一直直到bug-free.不能错任何一点. 思路不清晰:刷两天. 做错了,刷一天. 直到bug-free.高亮,标红. 185,OA(YAMAXUN)--- (1) findFirstDuplicat ... 
- (lintcode全部题目解答之)九章算法之算法班题目全解(附容易犯的错误)
		--------------------------------------------------------------- 本文使用方法:所有题目,只需要把标题输入lintcode就能找到.主要是 ... 
- 全部leetcode题目解答(不含带锁)
		(记忆线:当时一刷完是1-205. 二刷88道.下次更新记得标记不能bug-free的原因.) 88-------------Perfect Squares(完美平方数.给一个整数,求出用平方数来 ... 
- [Leetcode] Contains Duplicate III
		Given an array of integers, find out whether there are two distinct indices i and j in the array suc ... 
- Java中的可变长参数
		可变长参数的定义 与一般方法没多大差别,只不过形参多了...(三个点) 方法名(数据类型 ... 变量名){} 小案例: public class ParamDemo { public static ... 
- array题目合集
		414. Third Maximum Number 给一个非空的整数数组,找到这个数组中第三大的值,如果不存在,那么返回最大的值.要求时间复杂度为o(n) 例如: Example 1: Input: ... 
- 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 ... 
随机推荐
- Android原生嵌入React Native
			1.首先集成的项目目录 我使用的是直接按照react-native init Project 的格式来导入的,也就是说,我的Android项目目录是跟node_modules是在一个目录下的. 我们i ... 
- android studio编译慢的问题
			1.修改android studio的使用堆内存,根据自己电脑的内存,尽量设置的大一点,点击help->如下图: 2.接下来设置使用离线gradle构建,一开始就是使用了内置的默认路径gradl ... 
- μC/OS-II与RT-Thread对比——任务调度
			在任务调度器的实现上,μC/OS-II和RT-Thread都采用了位图调度(bitmap scheduling),任务优先级的值越小则代表具有越高的优先级,主要区别在于实现形式,是采用多 ... 
- Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例
			五.[Samba应用案例二] 设置Samba共享目录/software,允许用户jack和mary可以通过Windows客户端访问,并具有读写权限. 1.创建目录/software,添加用户jack, ... 
- 学习tornado:模板
			第一次接触tornado的template,是在做oastub的时候,因为一位同学在handler里面硬编码了html代码,我决定引入template机制来降低逻辑与页面的耦合. 简介 tornado ... 
- python异常处理和断言
			http://blog.csdn.net/pipisorry/article/details/21841883 关于异常处理有必要么的讨论 最重要的问题是你在开发过程中隐藏了bug,如果当时你没加这个 ... 
- IE11 开启F12开发人员工具中的 始终从服务器刷新
			在进行页面脚本调试时,经常需要清除浏览器缓存来获取最新的脚本文件,IE11之前的浏览器版本我们可以按F12调出开发人员工具,在缓存选项中开启"始终从服务器中刷新"的设置后我们就不需 ... 
- Workflow Notification Mailer Setup
			Workflow notification mailer setup in R12 is similar to 11i ( In both release 11i (OWF.H and higher ... 
- UML之构件图
			构件图,英文名曰:Component Diagrams用于描述一组构件之间的组织和依赖关系,用于建模系统的静态实现视图,构件可以是可执行程序.库.表.文件和文档等,她包含了逻辑类或者逻辑类的实现信息, ... 
- Xcode中iOS模拟器程序中的plist路径
			Xcode6.4里写了个简单的iOS程序在模拟器中跑. 其中用到了NSUserDefaults来保存属性文件plist,那么这个文件实际路径在哪里呢?在网上搜了一下,发现几种说法(*表示当前用户名): ... 
