首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JS每日一算法
汪啊汪QAQ
创建于2023-03-14
订阅专栏
每天学习一个JS算法
等 1903 人订阅
共178篇文章
创建于2023-03-14
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【JS每日一算法:剑指Offer系列】🟩160.赎金信(哈希表)
给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以,返回 true ;否则返回 false 。
【JS每日一算法:剑指Offer系列】🟨159.生命游戏(额外状态)
根据 百度百科 , 生命游戏 ,简称为 生命 ,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。 给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。
【JS每日一算法:剑指Offer系列】🟨158.长度最小的子数组(滑动窗口)
给定一个含有 n个正整数的数组和一个正整数 target。 找出该数组中满足其总和 大于等于target的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, nums
【JS每日一算法:剑指Offer系列】🟨157.两数之和 II - 输入有序数组(双指针)
给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。
【JS每日一算法:剑指Offer系列】🟩156.判断子序列(双指针)
给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。
【JS每日一算法:剑指Offer系列】🟨155.除自身以外数组的乘积(双数组、单数组)
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。
【JS每日一算法:剑指Offer系列】🟨154.O(1) 时间插入、删除和获取随机元素(哈希表+栈)
实现RandomizedSet 类: RandomizedSet() 初始化 RandomizedSet 对象 bool insert(int val) 当元素 val 不存在时,向集合中插.....
【JS每日一算法:剑指Offer系列】🟨153.H 指数(排序法、计数排序法)
给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。
【JS每日一算法:剑指Offer系列】🟨152.轮转数组(额外数组、翻转法)
给定一个整数数组 nums,将数组中的元素向右轮转 k个位置,其中 k 是非负数。你可以使用空间复杂度为 `O(1)` 的 **原地** 算法解决这个问题吗?
【JS每日一算法:剑指Offer系列】🟩151.多数元素(排序法、摩尔投票法)
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。
【JS每日一算法】🟨150.最小栈(栈)
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。
【JS每日一算法】🟥149.寻找旋转排序数组中的最小值 II(二分)
给你一个可能存在 重复 元素值的数组 nums ,它原来是一个升序排列的数组,并按上述情形进行了多次旋转。请你找出并返回数组中的 最小元素 。
【JS每日一算法】🟨148.寻找旋转排序数组中的最小值(二分)
给你一个元素值 互不相同 的数组nums ,它原来是一个升序排列的数组,并按上述情形进行了多次旋转。请你找出并返回数组中的最小元素 。
【JS每日一算法】🟨147.乘积最大子数组(暴力破解、动态规划)
给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 测试用例的答案是一个 32-位 整数。 子数组 是数组的连续子序列。
【JS每日一算法】🟨146.反转字符串中的单词(栈)
给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。
【JS每日一算法】🟨145.逆波兰表达式求值(栈)
给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 '+'、'-'、'*' 和 '/' 。
【JS每日一算法】🟥144.直线上最多的点数(暴力破解)
给你一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点。求最多有多少个点在同一条直线上。
【JS每日一算法】🟨143.排序链表(插入法、归并)
给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。你可以在 `O(n log n)` 时间复杂度和常数级空间复杂度下,对链表进行排序吗?
【JS每日一算法】🟨142.对链表进行插入排序(迭代法)
给定单个链表的头 head ,使用 插入排序 对链表进行排序,并返回 排序后链表的头 。 插入排序 算法的步骤: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。
【JS每日一算法】🟨141.LRU 缓存(哈希表+双向链表)
请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity.....
下一页