Java和javascript如何实现给指定数加一
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要为大家展示了"Java和javascript如何实现给指定数加一",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Java和javascript如
千家信息网最后更新 2026年11月04日Java和javascript如何实现给指定数加一
这篇文章主要为大家展示了"Java和javascript如何实现给指定数加一",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Java和javascript如何实现给指定数加一"这篇文章吧。
题目描述
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。
示例 1:
输入: [1,2,3]
输出: [1,2,4]
解释: 输入数组表示数字 123。
示例 2:
输入: [4,3,2,1]
输出: [4,3,2,2]
解释: 输入数组表示数字 4321。
解题方案
思路
标签:数组遍历
这道题需要整理出来有哪几种情况,在进行处理会更舒服
末位无进位,则末位加一即可,因为末位无进位,前面也不可能产生进位,比如
45 => 46末位有进位,在中间位置进位停止,则需要找到进位的典型标志,即为当前位后为0,则前一位加1,直到不为0为止,比如
499 => 500末位有进位,并且一直进位到最前方导致结果多出一位,对于这种情况,需要在第2种情况遍历结束的基础上,进行单独处理,比如
999 => 1000
在下方的Java和JavaScript代码中,对于第三种情况,对其他位进行了赋值0处理,Java比较tricky直接new数组即可,JavaScript则使用了ES6语法进行赋值
时间复杂度:O(n)
代码
Java版本
class Solution {
public int[] plusOne(int[] digits) {
int len = digits.length;
for(int i = len - 1; i >= 0; i--) {
digits[i]++;
digits[i] %= 10;
if(digits[i]!=0)
return digits;
}
digits = new int[len + 1];
digits[0] = 1;
return digits;
}
}
JavaScript版本
/**
* @param {number[]} digits
* @return {number[]}
*/
var plusOne = function(digits) {
const len = digits.length;
for(let i = len - 1; i >= 0; i--) {
digits[i]++;
digits[i] %= 10;
if(digits[i]!=0)
return digits;
}
digits = [...Array(len + 1)].map(_=>0);;
digits[0] = 1;
return digits;
};
画解


以上是"Java和javascript如何实现给指定数加一"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
数组
加一
末位
情况
数字
整数
输入
内容
篇文章
代码
基础
版本
示例
处理
学习
帮助
解释
输出
复杂
最高
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技企业
互联网科技海报
山东特亿宝互联网科技有限公司
科技互联网企业
互联网和科技创新
盈实互联网科技
互联网科技未来
互联网科技公司怎么样
远信互联网科技
互联网科技排名
汇久创客互联网科技
北京禾田雨橡互联网科技
融势互联网科技
顺玮阁互联网科技
互联网科技英文翻译
互联网在线教育科技创业
四川慕妮娅互联网科技有限公司
四川互联网展示科技馆设计
下一代互联网重大应用科技园
互联网科技平台产品运营
手磨咖啡
科技信息互联网
互联网科技金融
智网互联网科技
深圳天众互联网科技公司
互联网 科技馆
深圳国际航运科技和互联网
华夏恒生互联网科技013171
宇信科技在杭州互联网排第几
北京品多多互联网科技有限公司