Skip to content

Commit b4499f9

Browse files
committed
update
1 parent 4cc5610 commit b4499f9

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

66.plus-one.js

+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
/*
2+
* @lc app=leetcode id=66 lang=javascript
3+
*
4+
* [66] Plus One
5+
*/
6+
/**
7+
* @param {number[]} digits
8+
* @return {number[]}
9+
*/
10+
var plusOne = function (digits) {
11+
const { length } = digits;
12+
if (length < 1) return digits;
13+
14+
// solution 1
15+
// js中的BigInt超出16位就会溢出
16+
// function arr2number(arr) {
17+
// return arr.reduce((pre, cur, index) => {
18+
// const weight = length - index - 1;
19+
// // console.log(weight);
20+
// return pre + (BigInt(cur * Math.pow(10, weight)));
21+
// }, 0n);
22+
// }
23+
24+
/** solution 2
25+
* 直接使用数组
26+
*/
27+
let carry = digits[length - 1] >= 9;
28+
for (let i = length - 1; i >= 0; i--) {
29+
if (carry && digits[i] === 9) {
30+
digits[i] = 0;
31+
carry = 1;
32+
} else {
33+
digits[i] += 1;
34+
break;
35+
}
36+
37+
if(i === 0) {
38+
digits.unshift(1);
39+
}
40+
}
41+
// console.log(digits);
42+
43+
return digits;
44+
};
45+
46+
// plusOne([7,2,8,5,0,9,1,2,9,5,3,6,6,7,3,2,8,4,3,7,9,5,7,7,4,7,4,9,4,7,0,1,1,1,7,4,0,0,6])
47+
// plusOne([9, 9, 9])

0 commit comments

Comments
 (0)