摘要:前言的数组形式的整数加法对于非负整数而言,的数组形式是每位数字按从左到右的顺序形成的数组。给定非负整数的数组形式,返回整数的数组形式。
前言
Weekly Contest 123的 数组形式的整数加法:
解题思路对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]。
给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。
示例1:
输入:A = [1,2,0,0], K = 34 输出:[1,2,3,4] 解释:1200 + 34 = 1234示例2:
输入:A = [2,7,4], K = 181 输出:[4,5,5] 解释:274 + 181 = 455示例3:
输入:A = [2,1,5], K = 806 输出:[1,0,2,1] 解释:215 + 806 = 1021示例4:
输入:A = [9,9,9,9,9,9,9,9,9,9], K = 1 输出:[1,0,0,0,0,0,0,0,0,0,0] 解释:9999999999 + 1 = 10000000000提示:
1 <= A.length <= 10000
0 <= A[i] <= 9
0 <= K <= 10000
如果 A.length > 1,那么 A[0] != 0
此题解题思路类似两数相加,而且leetcode官方也有此题的解答。需要注意的是需要先将两个入参转换成链表后,按照两数相加的解题步骤处理即可。
实现代码/** * 989. 数组形式的整数加法 * @param A * @param K * @return */ public ListaddToArrayForm(int[] A, int K) { List result=new ArrayList<>(); char[] chars=String.valueOf(K).toCharArray(); int times=chars.length>A.length?chars.length:A.length; //将K转成链表 List kList=new LinkedList<>(); for(int i=0;i ) kList).addFirst(0); } //将A转换成链表 List aList=new LinkedList<>(); for(int i=0;i ) aList).addFirst(0); } int carry=0;//进位 for(int i=times-1;i>=0;i--){//逆序遍历链表 int k=kList.get(i); int a= aList.get(i); int num=k+a+carry; if(num>=10){//相加大于0则进位 carry=num/10; num=num%10; }else{ carry=0; } //头插法,将每一位的运算放在数组首位 result.add(0,num); } if(carry>0){//最后一位是否存在进位 result.add(0,carry); } return result; }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/77420.html
摘要:在符号位中,表示正,表示负。我们知道对于整型来说,内存中存放的是该数的补码。在计算机系统中,数值一律用补码来表示和存储。表示有效数字,。规定对于位的浮点数,最高的位是 ...
摘要:基本数据类型布尔类型或,占用位。强制类型转换强制类型转换的语法格式是,强制类型转换的运算符是圆括号。无符号右移运算符。对于低于类型如和的操作数总是先自动类型转换为类型后再移位。 注释 单行注释//......多行注释/ .../文档注释/*.../ 文档注释位于注释内容上一行 标识符和关键字 分隔符 分号:作为语句的分隔,每个Java语句必须使用分号作为结尾。花括号:定义一个代码...
摘要:前言本次分析基于解释器,版本在时代,整型有类型和长整型,长整型不存在溢出问题,即可以存放任意大小的整数。在后,统一使用了长整型。 前言 本次分析基于 CPython 解释器,python3.x版本 在python2时代,整型有 int 类型和 long 长整型,长整型不存在溢出问题,即可以存放任意大小的整数。在python3后,统一使用了长整型。这也是吸引科研人员的一部分了,适合大数据...
摘要:本文主要介绍数据类型强制转换和自动转换,自动转换是基于强制转换之上。强制转换主要指使用和三个函数,手动将各种类型的值,分布转换成数字字符串或者布尔值。 前言 JavaScript是一门动态语言,所谓的动态语言可以暂时理解为在语言中的一切内容都是不确定的。比如一个变量,这一时刻是个整型,下一时刻可能会变成字符串了。虽然变量的数据类型是不确定的,但是各种运算符对数据类型是有要求的。如果运算...
摘要:本文主要介绍数据类型强制转换和自动转换,自动转换是基于强制转换之上。强制转换主要指使用和三个函数,手动将各种类型的值,分布转换成数字字符串或者布尔值。 前言 JavaScript是一门动态语言,所谓的动态语言可以暂时理解为在语言中的一切内容都是不确定的。比如一个变量,这一时刻是个整型,下一时刻可能会变成字符串了。虽然变量的数据类型是不确定的,但是各种运算符对数据类型是有要求的。如果运算...
阅读 1536·2021-11-24 10:17
阅读 1031·2021-09-29 09:43
阅读 2164·2021-09-23 11:21
阅读 2159·2019-08-30 14:13
阅读 1294·2019-08-29 13:58
阅读 3156·2019-08-28 17:51
阅读 1803·2019-08-26 13:29
阅读 2972·2019-08-26 10:13