Skip to content

Commit 55f25e6

Browse files
committed
✨ [q7] Runtime 62 ms Beats 90.96% Memory 43.9 MB Beats 57.6%
1 parent cde58a8 commit 55f25e6

File tree

2 files changed

+20
-33
lines changed

2 files changed

+20
-33
lines changed

7/my_solution.js

+14-20
Original file line numberDiff line numberDiff line change
@@ -3,30 +3,24 @@
33
* @return {number}
44
*/
55
const reverse = (x) => {
6-
let charList = x.toString().split(''), result = null;
76
console.log(x);
8-
// console.log(x >>> 0);
9-
console.log((2 ** 31) - 1);
10-
11-
result = reverseCharList(charList, 0, 1, null, false);
12-
13-
console.log("result")
14-
console.log(result)
7+
return (x < 0) ? reverseCharList((-x).toString().split(''), 0, 1, null) * -1 : reverseCharList(x.toString().split(''), 0, 1, null);
158
};
169

17-
const reverseCharList = (charList, i, factor, result, isNeg) => {
10+
const reverseCharList = (charList, i, factor, result) => {
11+
if ((2 ** 31) <= result) return 0;
1812
if (undefined === charList[i]) {
19-
if ((2 ** 31) <= result) return 0;
20-
21-
return isNeg ? result * -1 : result;
13+
console.log("Returning: " + result)
14+
return result;
2215
}
16+
2317
console.log("charList[i]")
2418
console.log(charList[i])
25-
if ("-" === charList[i]) {
26-
isNeg = true;
27-
i++;
28-
return reverseCharList(charList, i, factor, result, isNeg);
29-
}
19+
// if ("-" === charList[i]) {
20+
// isNeg = true;
21+
// i++;
22+
// return reverseCharList(charList, i, factor, result, isNeg);
23+
// }
3024

3125
result += (parseInt(charList[i]) * factor);
3226
factor *= 10;
@@ -36,11 +30,11 @@ const reverseCharList = (charList, i, factor, result, isNeg) => {
3630
console.log(factor)
3731

3832
i++;
39-
return reverseCharList(charList, i, factor, result, isNeg);
33+
return reverseCharList(charList, i, factor, result);
4034
}
4135

4236

4337
// reverse(321)
4438
// reverse(120)
45-
// reverse(-123)
46-
reverse(1534236469)
39+
reverse(-123)
40+
// reverse(1534236469)

7/solution.js

+6-13
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,17 @@
33
* @return {number}
44
*/
55
const reverse = (x) => {
6-
return reverseCharList(x.toString().split(''), 0, 1, null, false);
6+
return (x < 0) ? reverseCharList((-x).toString().split(''), 0, 1, null) * -1 : reverseCharList(x.toString().split(''), 0, 1, null);
77
};
88

9-
const reverseCharList = (charList, i, factor, result, isNeg) => {
10-
if (undefined === charList[i]) {
11-
if ((2 ** 31) <= result) return 0;
12-
return isNeg ? result * -1 : result;
13-
}
14-
15-
if ("-" === charList[i]) {
16-
isNeg = true;
17-
i++;
18-
return reverseCharList(charList, i, factor, result, isNeg);
19-
}
9+
const reverseCharList = (charList, i, factor, result) => {
10+
if ((2 ** 31) <= result) return 0;
11+
if (undefined === charList[i]) return result;
2012

2113
result += (parseInt(charList[i]) * factor);
2214
factor *= 10;
2315
i++;
2416

25-
return reverseCharList(charList, i, factor, result, isNeg);
17+
return reverseCharList(charList, i, factor, result);
2618
}
19+

0 commit comments

Comments
 (0)