首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
算法数据结构
订阅
今日无事勾栏听曲
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
面试官:如何判断两个数组的内容是否相等
前几日室友遇到的一道面试题:判断两数组(一维)内容是否相等(不使用排序)。我们需要考虑:元素重复、边界值、特殊值...
数据结构与算法(三)-链表(LinkedList)
链表结构 一、介绍 链表和数组一样,可以用于存储一系列的元素,但是链表和数组的实现机制完全不同。链表又可以分作单向链表和双向链表。 链表的每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(有
面试官: 既然已经有数组了,为什么还要链表
对于不少开发者而言,链表(linked list)这种数据结构既熟悉又陌生,熟悉是因为它确实是非常基础的数据结构,陌生的原因是我们在业务开发中用到它的几率的确不大. 链表是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指…
前端涨薪功法:无处不在的双向链表数据结构
当代前端技术中,许多应用程序都需要快速地处理大量的数据。在处理这些数据时,数据结构的选择是至关重要的。双向链表是一种高效的数据结构,可以帮助我们在处理数据时提高效率。本文将从浅入深地介绍双向链表的重要
看动画理解「链表」实现LRU缓存淘汰算法
前几节学习了「链表」、「时间与空间复杂度」的概念,本节将结合「循环链表」、「双向链表」与 「用空间换时间的设计思想」来设计一个很有意思的缓存淘汰策略:LRU缓存淘汰算法。 如上图所示:单链表的尾结点指针指向空地址,表示这就是最后的结点了。而循环链表的尾结点指针是指向链表的头结点…
从 0 开始学习 JavaScript 数据结构与算法(七)双向链表
只能从头遍历到尾或者从尾遍历到头(一般从头到尾)。 链表相连的过程是单向的,实现原理是上一个节点中有指向下一个节点的引用。 单向链表有一个比较明显的缺点:可以轻松到达下一个节点,但回到前一个节点很难,在实际开发中, 经常会遇到需要回到上一个节点的情况。 既可以从头遍历到尾,也可…
漫画:什么是LRU算法?
用户信息当然是存在数据库里。但是由于我们对用户系统的性能要求比较高,显然不能每一次请求都去查询数据库。 所以,小灰在内存中创建了一个哈希表作为缓存,每次查找一个用户的时候先在哈希表中查询,以此提高访问性能。 很快,用户系统上线了,小灰美美地休息了几天。 一个多月之后......…
每日手撕--LRU算法
简单描述一下在《操作系统》这本书里面对于LRU算法的解说。 这就是最基本的LRU的磁盘调度逻辑,该算法运用领域比较广泛比如Redis的内存淘汰策略等等,该算法也是面试中面试官常常用来考验面试者代码能力和对LRU算法的正确理解。 以下我主要以为双向链表+HashMap的方式手撕一…
前端进阶算法2:从Chrome V8源码看JavaScript数组(附赠腾讯面试题)
数组、链表、栈、队列都是线性表,它表示的结构都是一段线性的结构,与之对应的就是非线性表,例如树、图、堆等,它表示的结构都非线性。 我们知道在 JavaScript 中,可以在数组中保存不同类型值,并且数组可以动态增长,不像其它语言,例如 C,创建的时候要决定数组的大小,如果数组…