python学习日志3
来源:互联网 发布:知乎赚钱 编辑:程序博客网 时间:2024/05/18 03:22
leetcode之Add Binary的解法
class Solution(object): def addBinary(self,a,b): l=[] carry=0 if len(a)>=len(b): i=len(a)-1 for m in b[::-1]: t=int(a[i])+int(m)+carry carry=self.add(t,l) i=i-1 else: i=len(b)-1 for n in a[::-1]: t=int(n)+int(b[i])+carry carry=self.add(t,l) i=i-1 if len(a)>len(b): for n in a[-len(b)-1::-1]: t=int(n)+carry carry=self.add(t,l) if len(a)<len(b): for m in b[-len(a)-1::-1]: t=int(m)+carry carry=self.add(t,l) if carry==1: l.insert(len(l),'1') l.reverse() return ''.join(l) def add(self,t,l): if t==3: l.append('1') carry=1 elif t==2: l.append('0') carry=1 elif t==1: l.append('1') carry=0 else: l.append('0') carry=0 return carry
学习总结
1.unicode字符不能和str的相加减,不同于C的ascii字符,并且str类型也不支持相加减,可以用强制类型转换int()
2.java类里面非静态的方法可以在类内部调用,但是python里面不能直接调用,会报错,找不到该方法,必须使用self.方法名
3.不可以这样写str.join(l.reverse()),要分开l.reverse()和str.join(l)
4.list.insert(-1,obj)的结果是obj在倒数第二位,因为list插入当前位置,在插入之后的(包括本身)都向后移动
更多leetcode解题源码,请查看我的github地址https://github.com/Jum1023/leetcode
0 0
- python学习日志3
- Python学习日志
- Python学习日志之一
- python学习日志<一>
- python日志TimedRotatingFileHandler学习
- Python学习日志
- python 打日志学习
- python学习日志--注释
- python学习日志
- python学习日志1
- python学习日志2
- python学习日志7
- python学习笔记-日志
- python学习日志--day1
- python学习日志--day2
- python学习日志--day3
- python学习日志--day4
- python学习日志--day5
- 位运算
- 应用开机自启动&首启动&是否安装&应用信息界面&启动程序&桌面选择器
- [深度学习论文笔记][Video Classification] Large-scale Video Classification with Convolutional Neural Networks
- Android 打造形形色色的进度条 实现可以如此简单
- ICA
- python学习日志3
- 电信手机数据连接的那些问题
- 【matlab】从图片中截取矩形区域(手工选取/标记在原图上/截取矩形区域并保存)
- 响应式设计之媒体查询一
- Jetty实战(3)之嵌入式简单文件服务器
- Arm汇编 位置无关代码 adr 指令
- 公用Foot和友情链接模块代码模板
- caffe的python接口学习(8):caffemodel中的参数及特征的抽取
- Html学习笔记(3)