首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
数据结构And算法
订阅
稀缺的辉
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
真香!阿里最新出品Java面试核心讲(终极版),Github已星标50K
1、Lambda表达式概述 1.1、Lambda表达式的简介 Lambda 表达式(Lambda expression),也可称为闭包(Closure),是 Java(SE)8 中一个重要的新特性。
闲来无事,动手写一个LRU本地缓存
缓存失效指的是缓存过期了,需要对过期的缓存数据进行删除。删除可以分为主动删除和被动删除两种 缓存淘汰指的是缓存的数量达到一定值时按照某种规则删除某个数据,不考虑该数据是否过期。常见的缓存淘汰算法有: 选择好了缓存失效和缓存淘汰的算法以后就可以确定缓存结构了,原先考略的是线程安全…
LRU算法的Java实现
LRU算法全称Least Recently Used,也就是检查最近最少使用的数据的算法。这个算法通常使用在内存淘汰策略中,用于将不常用的数据转移出内存,将空间腾给最近更常用的“热点数据”。 初识这个算法忘了是在操作系统课还是计算机组成原理课上,其在Redis、Guava等工具…
面试官:如何用LinkedHashMap实现LRU
上一篇文章分析了HashMap的原理,有网友留言想看LinkedHashMap分析,今天它来了。 LinkedHashMap是HashMap的子类,在原有HashMap数据结构的基础上,它还维护着一个双向链表链接所有entry,这个链表定义了迭代顺序,通常是数据插入的顺序。 也…
java 数据结构与算法之平衡二叉树 (AVL 树) 的设计与实现
上一篇博文中,我们详细地分析了树的基本概念以及二叉查找树的实现过程,基于二叉查找树的特性,即对于树种的每个结点 T(T 可能是父结点), 它的左子树中所有项的值小 T 中的值,而它的右子树中所有项的值都大于 T 中的值。这意味着该树所有的元素可以用某种规则进行排序 (取决于 Comparable 接口的实现),以致于二叉树查找树能够胜任快速地查找过程,这个查找的过程的时间复杂度为 O(logN),但是这个时间复杂度并不是严格意义上的 O(logN),在某些情况下还是会上升到 O(N),显然这并不是一件好事情,因此本篇我们将来讨论另一种更为稳定的二叉树,它就是 AVL 树。以上是本篇将会讨论的主要内容: 普通二叉查找树的问题 平衡二叉树的定义 平衡二叉树的设计与实现 平衡二叉树的单旋转算法与实现 左左单旋转 LL 情景分析 右右单旋转 RR 情景分析 平衡二叉树的双旋转算法与实现 左右双旋转 LR 情景分析 右左双旋转 RL 情景分析 平衡二叉树插入操作的实现 平衡二叉树删除操作的实现 平衡二叉树的最少结点数和最多结点数问题
树、二叉树与手写AVL,树型数据结构详解
数据结构——树,如约而至了,甚至比我想的要早上那么几天,我很少夸自己写的东西,但今天真的是满满干货,希望大家能够点赞支持。
双向链表的实现(Java)
双向链表,其实就是链表的每个结点都可以知道自己的前一个结点和后一个结点。 每个结点都有一个前驱指针和后驱指针,分别存储前一个结点和后一个结点在内存中的地址。 head 指向链表第一个有效结点。 双向链表的插入操作,只需要改变相邻结点的指针指向就可以。时间复杂度为 O(1)。 双…
看图轻松理解数据结构与算法系列(AVL树)
推出一个新系列,《看图轻松理解数据结构和算法》,主要使用图片来描述常见的数据结构和算法,轻松阅读并理解掌握。本系列包括各种堆、各种队列、各种列表、各种树、各种图、各种排序等等几十篇的样子。 AVL树,也称平衡二叉搜索树,AVL是其发明者姓名简写。AVL树属于树的一种,而且它也是…
看图轻松理解数据结构与算法系列(双向链表)
推出一个新系列,《看图轻松理解数据结构和算法》,主要使用图片来描述常见的数据结构和算法,轻松阅读并理解掌握。本系列包括各种堆、各种队列、各种列表、各种树、各种图、各种排序等等几十篇的样子。 双向链表属于链表的一种,也叫双链表双向即是说它的链接方向是双向的,它由若干个节点组成,每…
小白一路走来,连续刷题三年,谈谈我的算法学习经验
大一从一个小白一路走过来,也在 leetcode 刷了几年了题,也是有点经验,也走过很多坑,在此分享我的一波经验,请耐心看完一定会有所帮助。 说实话,想要提高自己的算法,我觉得就是脚踏实地着多动手去刷题,多刷题。 但是,如果你是小白,也就是说,你连常见的数据结构,如链表、树以及…