plus-one java
来源:互联网 发布:购物车代码 java 编辑:程序博客网 时间:2024/06/08 03:13
题目描述
Given a number represented as an array of digits, plus one to the number.
题目大意
给定一个用数组表示的一个数,对它进行加一操作。
每一个数位都存储在数组的一个位置上。数组下标从大到小表示数位从低位到高位。
解题思路
直接求解,设置一个进位标志carry,初值为1,表示加1,从最低位开始tmp = a[x] + carry,
a[x] = tmp%10,carry = tmp/10,如果carry不为0对下一位再进行操作,直到所有的数位处理完或者carray为0就退出,如果最后还有carray不为0说明整个数组要扩展一个数位。
package com.leetcode;public class PlusOne {public int[] plusOne(int[] digits) {int carry = 1; // 进位标志,下一位来的进位标志int tmp;for (int i = digits.length - 1; i >= 0; i--) {tmp = digits[i];digits[i] = (tmp + carry) % 10; // 计算当前位的新值carry = (tmp + carry) / 10; // 计算新的进位if (carry == 0) { // 没有进位了就可以退出了break;}}if (carry == 1) { // 最后还有一个进位int[] result = new int[digits.length + 1];System.arraycopy(digits, 0, result, 1, digits.length);result[0] = carry;return result;} else {return digits;}}}
0 0
- [Leetcode] Plus One (Java)
- Plus One Java
- Plus One (Java)
- [LeetCode][Java] Plus One
- (java)Plus One
- plus-one java
- 66. Plus One(java)
- LeetCode(066) Plus One (Java)
- [leetcode-66]plus one(java)
- LeetCode 66 : Plus One (Java)
- (Java)LeetCode-66. Plus One
- 【leetcode】66. Plus One【java】
- [LeetCode] 66. Plus One java
- [leetcode]66. Plus One(Java)
- Plus One
- Plus One
- Plus One
- Plus One
- 逻辑学 —— 复杂问题谬误
- svn link方式安装,适用于myeclipse、sts开发工具
- XStream使用总结
- CentOS6安装GitLab7
- devexpress破解方法
- plus-one java
- Android签名机制及PMS中校验签名
- IMP-00058: ORACLE error 12560 encountered
- 要为成功找方法
- xStream完美转换XML、JSON
- 支付宝:即时到账接口对接
- hdu2222 ac自动机裸题
- 自己动手写word2vec (四):CBOW和skip-gram模型
- 网站经常出现的错误代码对照表