leetcode刷题——415. 字符串相加
题目描述
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。
提示:
num1 和num2 的长度都小于 5100
num1 和num2 都只包含数字 0-9
num1 和num2 都不包含任何前导零
你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式
解题思路
标签:字符串
题目理解:
- 模拟人工加法的过程,需要有一个变量来保存进位
- 在计算时,从后往前相加
- 因此,可以使用双指针,从后往前遍历两个字符串
算法流程:
- temp=n1+n2+carry,计算当前位,并将temp%10添加到res的首位
- carry=temp//10,计算进位
- 索引溢出处理:当指针i或j走过字符串的首位后,给n1或n2赋值为0,相当于给num1或num2前面加0
- 当遍历完num1和num2后,判断carry是否>0。如果>0,返回str(carry)+res;否则,返回res
代码
class Solution(object):def addStrings(self, num1, num2):""":type num1: str:type num2: str:rtype: str"""i,j,carry=len(num1)-1,len(num2)-1,0res=""while i>=0 or j>=0:n1=ord(num1[i])-ord("0") if i>=0 else 0n2=ord(num2[j])-ord("0") if j>=0 else 0temp=n1+n2+carrycarry=temp//10res=str(temp%10)+resi,j=i-1,j-1return str(carry)+res if carry>0 else res
leetcode刷题——415. 字符串相加相关推荐
- LeetCode刷题笔记 字符串 字符串匹配
28 实现 strStr() 判断一个字符串是不是另一个字符串的子字符串,并返回其位置. 输入一个母字符串和一个子字符串,输出一个整数,表示子字符串在母字符串的位置,若不存在则返回-1. 输入:hay ...
- 【LeetCode笔记】415. 字符串相加(Java、字符串)
题目描述 不能直接把字符串转换成整数(会溢出) 面试被问过,今天刷面经又刷到..那就索性水一篇文吧! 更新:原题就是 leetcode 415 思路 & 代码 只要理好字符串s.字符串t.答案 ...
- leetCode刷题--两数相加
给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. 请你将两个数相加,并以相同形式返回一个表示和的链表. 你可以假设除了数字 0 ...
- Leetcode刷题笔记-字符串总结
首先明确两个概念:子串与子序列. 比如一个字符串"aaabbc"的一个子串为"aaa".而"abc"是它的一个子序列.即子串必须是在字符串中 ...
- C#LeetCode刷题-字符串
字符串篇 # 题名 刷题 通过率 难度 3 无重复字符的最长子串 24.6% 中等 5 最长回文子串 22.4% 中等 6 Z字形变换 35.8% 中等 8 字符串转整数 (atoi) 15.3% 中 ...
- C#LeetCode刷题之#205-同构字符串(Isomorphic Strings)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3770 访问. 给定两个字符串 s 和 t,判断它们是否是同构的. ...
- LeetCode 415. 字符串相加 (逢十进一模版字符处理)
415. 字符串相加 题意: 用两个字符串表示两个数 求出其相加的结果 不能使用任何内建 BigInteger 库 不能直接将输入的字符串转换为整数形式 思路: 翻转字符串,将其转为字符数组,即从下标 ...
- C#LeetCode刷题-数学
数学篇 # 题名 刷题 通过率 难度 2 两数相加 29.0% 中等 7 反转整数 C#LeetCode刷题之#7-反转整数(Reverse Integer) 28.6% 简单 8 字符串转整数 (a ...
- leetcode刷题目录总结
题目 题目 技巧 相似的题目 其他 1. 无序数组中找出目标为target的两个数 先定义下一个数,然后找两位的数是否存在 高频, 大厂刷题班, 第27节 2.逆序链表两数相加 链表.各位加法 高频, ...
最新文章
- 保持一颗好学之心(转)
- Mybatis使用接口开发
- Lync Server 2013 部署前端池支持NLB吗?
- 5月19-20日的上海 来一次纯粹的WebRTC之旅
- java版本-API接口测试框架搭建
- 光纤到桌面FTTD解决方案
- 飞思卡尔单片机高效c语言编程,飞思卡尔单片机高效c语言编程(中文)新.pdf
- 知识付费平台包括哪些功能版块?
- 【实习日报】2019年6月上半月 前端开发实习工作日报汇总
- Windows与虚拟机文件夹共享的设置方法
- 制作一个播放器(二)
- linux vnc登陆,vnc登陆,4个步骤教你vnc登陆Linux
- ReCap 360 photo照片建模技术的又一个例子
- Spring Boot 项目 - API 文档搜索引擎
- 实时空气质量监测解决方案
- 【OpenCV】cv2.putText()函数用法
- 系统集成都考什么,需要注意什么
- BLDC(直流无刷电机)反电动势测量/观测模型
- 搞不定Serverless?让你秒懂掌握Profiling让一份程序优雅自适应
- c语言概率产生字母,智邮普创c语言面试题 ---- 字母概率(示例代码)