首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
HOT100
Always_positive
创建于2021-05-26
订阅专栏
本专栏主要存放LeetCode HOT100的相关题目的解题经验和技巧。
等 16 人订阅
共15篇文章
创建于2021-05-26
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
HOT100——搜索旋转排序数组(JS实现)
题目描述 解题思路 解题代码 启示 学会通过位运算的方式求中位数。 学会求峰值。本题在尝试使用二分法的时候,可能会遇见多种情况,不如直接for循环。
HOT100——下一个排列(JS实现)
题目描述 解题思路 解题代码 启示 学会使用sorted、splice、slice等常用API。 学会引入第三方变量来辅助我们的思路。
HOT100——最长有效括号(JS实现)
题目描述 解题思路 使用辅助栈 + 求连续最长的元素序列。 为什么要使用栈?通过这个辅助栈可以帮助我们更好的定位哪些位置上的字符能够构成有效的括号。 如何求连续最长的元素序列,是通过循环更新最大值的方
HOT100——合并K个升序链表(JS实现)
题目描述 解题思路 暴力法 首先遍历每一个链表元素,然后将其值存入到一个数组中。 将第一步获得的数组进行排序。 遍历第二步的数组,分别生成节点,然后存入一个临时数组。 以第三步获得的临时数组为基础,依
HOT100——括号生成(JS实现)
题目描述 解题思路 本题采用DFS的思想。 只要有左括号剩余的时候,就将左括号剩余数量-1,然后继续投入DFS。 当左括号的长度小于有括号的长度时,将右括号剩余数量-1,然后继续投入DFS。 实现代码
HOT100——合并两个有序链表(JS实现)
题目描述 解题思路 首先我们要看清题干,本题给出的两个链表都是有序的,所以我们可以考虑双指针。 使用一个指针指向了l1的头节点,使用另一个指针指向l2的头节点,比较大小谁小谁添加到新节点的下一个。 当
HOT100——删除链表的倒数第N个节点(JS实现)
题目描述 解题思路 本题主要思路是使用哈希表,具体思路如下: 使用哈希表存储每一个节点,键为第几个元素,值为当前节点指针。 找到倒数第几个节点的键。 修改当前键的值的前一个和后一个nxet域即可。 实
HOT100——电话号码的字母组合(JS实现)
题目描述 解题思路 本题采用的是DFS的解题思路。 本题的特点在于递归中有循环。 DFS函数接收两个参数,一个是当前字符串,一个是指针,当指针超过了digits的长度的时候,说明可以存储并返回了,然后
HOT100——三数之和(JS实现)
题目描述 解题思路 如果元素的个数小于3,直接返回空数组。 对数组进行从小到大排序。 定义三个指针,分别是i,left,right。其中i是我们固定循环的指针,一直循环到nums.length - 2
HOT100——盛最多水的容器(JS实现)
题目描述 解题思路 当拿到这道题目的时候,我首先想到的是暴力法,一个元素与后面的所有元素进行比较,取较小值,然后乘上距离,保存到临时数组中,最后取最大值即可,但是你懂得,时间复杂度肯定是要超标的,所以
HOT100——正则表达式匹配(JS实现)
题目描述 解题思路 本题采用的是回溯的思想。 主要需要考虑的情况有以下几种 字符串和模式串的字符相等。 模式串的字符为点。 模式串为*的时候,分两种情况讨论,一是0次,一是多次。 解题代码 启示 学会
HOT100——最长回文子串(JS实现)
题目描述 解题思路 方法:中心扩散法。 核心:目标字符的左右是否相等。 讨论两种情况:回文子串的长度是奇数的情况和偶数的情况。 循环时,一看是否越界,二看是否相等。 具体思路请看代码注释。 解题代码
HOT100——寻找两个正序数组的中位数(JS实现)
题目描述 解题思路 本题采用双指针的解题方法。 一个指针指向数组1。 一个指针指向数组2。 依次比较两个指针指向的元素的大小,谁小谁加到排序好的数组中,直到一方遍历完,将没遍历完的全部加到排序好的数组
HOT100——无重复字符的最长子串(JS实现)
题目描述 解题思路 本题采用双指针 + 哈希表的方式解决问题。 最大值是通过不断更新出来的。 右指针移动到字符串的最后一个元素循环结束。 循环体中首先判断右指针指向的元素是否出现在哈希表中,如果出现了
HOT100——两数相加(JS实现)
题目描述 解题思路 本次使用暴力解法: 拿到链表对应的字符字符串数值,然后将数值反转之后转为BigInt类型,之所以转为BigInt类型的原因在于后期测试用例中有大数形式。 将两个数值相加,然后转为字