前端 LeeCode 笔记(长期更新)

2021/12/22 LeeCode

记录我 LeeCode 刷题使用的好用知识点,查漏补缺

# 推荐题目参考

题目 (opens new window)

# 一、数字类

我常用的方法:

array.forEach((i) => {
  xxx
}) // 遍历数组
array.reverse() // 数组反转
String.split('') // 把字符串变为数组
parseInt(String) // 字符串转数字
String - 0 // 字符串转数字
number.toString() // 数字转字符串
isNaN(number / String) // 判断值是否为NaN; 可用于检测是否为数字
array.unshift(xxx) // 在数组前插入
1
2
3
4
5
6
7
8
9
10

# 1. LeeCode 第 7 题:整数反转

幂表示方法:

Math.pow(-2, 31) // -2^31 可表示负数
2 ** 31 //  2^31 不可为负
1
2

# 2. LeeCode 第 43 题:字符串相乘

JavaScript 中的最大安全整数是 9007199254740991,当我们进行超出这个范围的数值计算的时候就无法得到精确的值,而是一个近似值。

我使用的是 BigInt 进行运算。JavaScript 用时超过 71% 、内存超过 81% 用户提交记录。

// 整数转BigInt,在后面+n
console.log(123456789n)
// 使用函数转
BigInt("10") // 10n
BigInt(10)   // 10n
BigInt(true) // 1n
1
2
3
4
5
6

我的题解

/**
 * @param {string} num1
 * @param {string} num2
 * @return {string}
 */
var multiply = function (num1, num2) {
  return (BigInt(num1) * BigInt(num2)).toString()
}
1
2
3
4
5
6
7
8

# 3.LeeCode 第 168 题:Excel 表列名称

将数字转换为 ASCII 码

题目技巧,1~26,每一个加 64 就是对应大写 A~Z

var num = 65
String.fromCharCode(num) // A
1
2

# 4.LeeCode 第 171 题:Excel 表列名称

将数字转换为 ASCII 码

题目技巧,1~26,每一个加 64 就是对应大写 A~Z

var a = 'A'
a.charCodeAt() // 64
1
2
Last Updated: 2022/6/30 11:59:33