首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
剑指Offer
Always_positive
创建于2021-05-25
订阅专栏
本专栏主要存放剑指Offer的解题经验、学习方法。
等 9 人订阅
共75篇文章
创建于2021-05-25
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Always_positive
2年前
LeetCode
剑指Offer——打印从1到最大的n位数(JS实现)
题目描述 解题思路 循环结束的位置就是10**位数 -1 从1开始循环到指定位置即可。 解题代码 启示 学会JS中的幂运算。
148
2
1
Always_positive
2年前
前端
剑指Offer——数组中数字出现的次数(JS实现)
if (m.m.set(v,m.m.result.console.因为题目中说了除了两个数字出现一次外,其余数字都出现了两次,凡是出现了两次,做异或运算都为0,所以全部进行遍历异或得到的值一定是那两个只出现一次的数字。我们根据全部遍历异或的到的结果比如是0111,从最后一位1可以...
202
1
评论
Always_positive
2年前
前端
剑指Offer——复杂链表的复制(JS实现)
m.set(node,new Node(node.node = node.m.get(node).next = node.next ? m.get(node.m.get(node).random = node.random ? m.get(node.node = node.ret...
177
1
评论
Always_positive
2年前
前端
剑指Offer——用两个栈实现队列(JS实现)
this.this.CQueue.prototype.console.this.stackA.CQueue.prototype.if (this.stackB.return this.stackB.while (this.stackA.this.stackB.push(this....
132
1
评论
Always_positive
2年前
前端
剑指Offer——合并两个排序的链表(JS实现)
创建一个新的链表节点newNode指定一个临时指针h指向这个新的节点newNode使用while循环,在条件为L1和L2都不为空的条件下遍历,如果L1当前数据域的值小,就让newNode指向L1,反之指向L2while循环遍历完之后,如果L1和L2谁还有剩余,谁就加到newNod...
55
2
评论
Always_positive
2年前
前端
剑指Offer——二进制中1的个数(JS实现)
将输入的二进制串转换为二进制字符串使用for循环,遍历其中1的个数返回1的个数。let str = n.console.
47
1
评论
Always_positive
2年前
前端
剑指Offer——反转链表(JS实现)
首先使用一个node指针记录头指针使用while循环遍历链表,将链表中的每个值保存在一个数组中。然后使用result指针记录头指针,node指针开始往后遍历node指针每遍历一次,将数据域修改为数组.arr.push(head.head = head.node.val = arr...
86
1
评论
Always_positive
2年前
前端
剑指Offer——二叉搜索树的第K大的节点(JS实现)
首先构建一个集合用来存储遍历的所有元素。使用DFS遍历二叉树,并将结果存到集合中。set.add(node.dfs(node.dfs(node.const arr = [...arr.
64
1
评论
Always_positive
2年前
前端
剑指Offer——从尾到头打印链表(JS实现)
首先遍历链表,将链表中的每一个值都存在一个数组中。arr.push(head.head = head.const len = arr.result.push(arr.
49
1
评论
Always_positive
2年前
前端
剑指Offer——替换空格(JS实现)
* split(’ ')将字符串根据空格,划分为字符数组 * join(’%20’) 将字符数组进行组合成字符串
102
1
评论
Always_positive
2年前
前端
剑指Offer——链表中倒数第k个节点(JS实现)
本题采用快慢指针的思路。快指针先走k步。然后快慢指针同步走。当快指针的next域为空的时候,慢指针再多走一步即到了倒数第K个节点。本题存在一种特殊情况,即当链表只有一个节点时,直接返回节点的头指针。fast = fast.while (fast.fast = fast.slow ...
44
1
评论
Always_positive
2年前
前端
剑指Offer——二叉树的镜像(JS实现)
需要明确指出的是我们返回的排序好的root对象我们首先判断root这个参数的左右孩子节点是否为空,只要为空,则说明排序好了。不为空,则使用交换方法,交换左右指针。最后使用递归,将左右孩子节点继续投入函数中。temp = root.root.left = root.root.mir...
38
1
评论
Always_positive
2年前
前端
剑指Offer——二叉树的深度(JS实现)
return Math.max(maxDepth(root.left),maxDepth(root.
134
1
评论
Always_positive
2年前
前端
剑指Offer——数组中数字出现的次数II(JS实现)
使用JS中的Map数据结构首先创建Map数据结构,然后依次遍历判断该数据结构中是否包含数组的元素,如果不包含就创建键值对,并将值置为1,包含的话则将值+1最后遍历Map数据结构,如果值为1的话,则返回对应的键。if (m.m.set(v,m.m.
54
1
评论
Always_positive
2年前
前端
剑指Offer——左旋转字符串(JS实现)
首先将字符串转为字符数组。定义两个临时数组,一个存放分割前的数组,一个存放分割后的数组。依次遍历字符数组,如果索引下标+1小于等于n,则将其加入分割前的数组,反之加入分割后的数组。使用拓展运算符合并两个数组。使用for of循环将数组中的所有元素合并成字符串进行返回。temp.t...
62
1
评论
Always_positive
2年前
前端
剑指Offer——求1+2+…+n(JS实现)
使用递归使用数组的reduce方法,将初始累积器值置为1,然后索引下标+1进行累积。return Array(n).fill(null).
61
1
评论
Always_positive
2年前
LeetCode
剑指Offer——表示数值的字符串(JS实现)
题目描述 解题思路 本题采用正则表达式的解法,就当作练习自己的正则表达式了 使用trim去除字符串两侧的空格。 小数的情况。 整数的情况。 为e或E的情况,然后后面跟着一个整数的情况 综合上面四种情况
119
1
1
Always_positive
2年前
LeetCode
剑指Offer——把字符串转换成整数(JS实现)
题目描述 解题思路 本题需要考虑的一是数值是由范围的,其次就是正则表达式怎么写,当然本题也可以不使用正则表达式,但是本次题解采用的是正则,因为这样简单易懂。 首先去除字符串两侧的空格。 使用正则表达式
644
5
评论
Always_positive
2年前
LeetCode
剑指Offer——剪绳子II(JS实现)
题目描述 解题思路 本题与《剪绳子I》这个题目本质是一样的,但是区别在于,本题加大了数字范围需要对答案进行取模1000000007,但是我们在调用Math.max函数的时候,里面不能有BigInt类型
177
1
评论
Always_positive
2年前
LeetCode
剑指Offer——数值的整数次方(JS实现)
题目描述 解题思路 本题核心: 当n为奇数和偶数时两种情况的讨论,同时要注意n为0、负数是的情况。 情况1: (2,4) = (2,2) * (2,2) 情况2:(2,5) = (2,2) * (2,
412
6
2
下一页
温馨提示
当前操作失败,如有疑问,可点击申诉