首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
JavaScript 算法记录
Blue_M
创建于2022-11-27
订阅专栏
算法入门题从简到难 来源于leetcode
暂无订阅
共19篇文章
创建于2022-11-27
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
(算法)堆结构
完全二叉树 和 堆 从第一层到倒数第二层,每一层都是满的 最后一层的结点是从左到右连续排列的(也就是说所有结点都集中排列在最左边)。 对于索引为 n 的结点来说: 索引 (n-1)/2 的结点是它的父
(算法)平衡二叉树
平衡二叉树的判定 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。 示例: 题解: 规则: 平衡二叉树的构造 给定一
(算法)二叉搜索树
查找数据域为某一特定值的结点 题解: 规则: 插入新结点 规则: 删除指定节点 规则: 二叉搜索树的验证 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 示例: 题解: 规则: 将排序数组转化为二
(算法)二叉树先序、后序、中序遍历及二叉树的层次遍历、翻转
先序遍历 给定一个二叉树,返回它的前序(先序)遍历序列。 示例: 题解: 规则: 后序遍历 反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 规则: 中序遍历 题解: 规则: 层次遍历 给你一
(算法)快慢指针与多指针
快慢指针——删除链表的倒数第 N 个结点 给定一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例: 题解: 规则: 多指针法——链表的反转 定义一个函数,输入一个链表的头结点,反转该
(算法)归并、快速排序
分治 分而治之,其本质就是将一个大问题分解为若干个子问题,针对子问题分别求解后,再将子问题的解整合。 归并排序 分解子问题、求解每个子问题、合并子问题的解,得出大问题的解。 编码: 规则: 快速排序
(算法)递归与回溯
全排列问题 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。 示例: 题解: 规则: 组合问题 给定一组不
(算法)DFS(深度优先)与BFS(广度优先)
DFS与二叉树 解释: 编码: 规则: BFS与二叉树 解释: 伪代码: 规则: 二叉树的层序遍历 结构: 编码: 规则:
(算法)栈与队列(下)
用栈实现一个队列 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() --
(算法)栈与队列(上)
有效括号 给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合,左括号必须以正确的顺序闭合。 注意:空字符
(算法)环形链表
判断链表是否成环 给定一个链表,判断链表中是否有环。 示例: 题解: 规则: 定位环的起点 给定一个链表,返回链表开始入环的第一个结点。 如果链表无环,则返回 null。 示例: 题解: 规则:
(算法)链表的应用
链表的合并 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有结点组成的。 示例: 题解: 规则: 链表节点的删除 给定一个排序链表,删除所有重复的元素,使得每个元素只出
(算法)字符串的应用
回文字符串 给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。 示例: 题解: 规则: 字符串匹配 设计一个支持以下两种操作的数据结构: void addWord(word) boo
(算法)数组的应用
两数求和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 示例: 题解: 规则: 合并两个有序数组 给定一个整数数组 nu
链表-复杂链表的复制
剑指 Offer 35. 复杂链表的复制 请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向
链表-反转链表
剑指 Offer 24. 反转链表 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 示例: 题解1: 利用栈 题解2: 双指针 -> 时间O(N)空间O(1) 题解3: 递归
链表-从尾到头打印链表
剑指 Offer 06. 从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 题解1:递归 时间O(N)、空间O(N) 题解2:时间和空间占用较高 题解
栈与队列-包含 min 函数的栈
剑指 Offer 30. 包含 min 函数的栈 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。
栈与队列-用两个栈实现队列
剑指 Offer 09. 用两个栈实现队列 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的