首页
AI Coding
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
算法
格子媛
创建于2022-03-15
订阅专栏
学习算法~
暂无订阅
共13篇文章
创建于2022-03-15
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
JavaScript实现字典Map
字典特点 字典存储的是键值对,主要特点是一一对应。 此外,在字典中 key 是不能重复且无序的,而 Value 可以重复。
JavaScript实现集合Set
集合特点 集合通常是由一组无序的、不能重复的元素构成。 数学中常指的集合中的元素是可以重复的,但是计算机中集合的元素不能重复。 集合是特殊的数组。 特殊之处在于里面的元素没有顺序,也不能重复。
JavaScript实现哈希表
哈希表通常是基于数组实现的,但是相对于数组,它存在更多优势: 哈希表可以提供非常快速的 插入-删除-查找 操作。 无论多少数据,插入和删除值都只需接近常量的时间,即 O(1)。
JavaScript实现最小堆
定义 最大堆:对于任意节点,其子节点均不大于该节点 最小堆:对于任意节点,其子节点均不小于该节点 特性 最大堆:堆顶节点总是堆中最大的 最小堆:堆顶节点总是堆中最小的
JavaScript实现二叉搜索树
二叉搜索树 二叉搜索树(BST,Binary Search Tree),也称为二叉排序树和二叉查找树。 二叉搜索树是一棵二叉树,可以为空。
JavaScript实现双向链表
双向链表既可以从头遍历到尾,又可以从尾遍历到头。也就是说链表连接的过程是双向的,它的实现原理是:一个节点既有向前连接的引用,也有一个向后连接的引用。
JavaScript实现单向链表
链表和数组一样,可以用于存储一系列的元素,但是链表和数组的实现机制完全不同。链表的每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(有的语言称为指针或连接)组成。
JavaScript二叉树前中后序遍历非递归实现
二叉树使用递归实现前中后序遍历是非常容易的,本文给出非递归实现前中后序遍历的方法,核心的思想是使用一个栈,通过迭代来模拟递归的实现过程。
JavaScript深度优先和广度优先遍历
广度优先遍历 英文缩写为BFS即Breadth FirstSearch.其过程检验来说是对每一层节点依次访问,访问完一层进入下一层,而且每个节点只能访问一次。
JavaScript实现队列结构(Queue)
队列简介 队列是是一种受限的线性表,特点为先进先出(FIFO:first in first out)。 受限之处在于它只允许在表的前端(front)进行删除操作; 在表的后端(rear)进行插入操作
JavaScript实现栈结构(Stack)
数组是一个线性结构,并且可以在数组的任意位置插入和删除元素。而栈和队列就是比较常见的受限的线性结构。 栈的特点为先进后出,后进先出。
JavaScript滑动窗口算法
滑动窗口的思路: 增加窗口右边界,寻找一个可行解,在找到可行解的情况下增加窗口左边界,优化可行解,找到最优解。
leetcode146题【LRU (最近最少使用) 缓存机制】
leetcode 146. LRU (最近最少使用) 缓存机制 题目描述 思路编码 由于当前考虑时间复杂度在O(1),且由于当进行缓存容量达到上限时,需删除最久未使用的数据值