首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
数据结构与算法
订阅
又语
更多收藏集
微信扫码分享
微信
新浪微博
QQ
6篇文章 · 0订阅
每日一道算法题--leetcode 486-- 预测赢家(动态规划)--python
这种取数,预测赢家的题目,是共通的。采用动态规划法。每次只需要考虑是取左侧的还是右侧的,用一个二维数组保存起来取左侧和取右侧会产生的最大差值。如何选择select(i,j)只和select(i+1,j)和select(i,j-1)有关,因此为了避免重复计算,肯定是要自底向上,就…
数据结构和算法:链表(上)
缓存是一种提高数据读取性能的技术,在硬件设计、软件发开发中都有着非常广泛的应用,比如常见的CPU缓存、数据库缓存、浏览器缓存等等。 缓存的大小有限,当缓存被用满时,那些数据应该被清理出去,哪些数据应该被保留?这就需要缓存淘汰策略来决定,常见的缓存淘汰策略有三种:先进先出策略FI…
这或许是东半球讲十大排序算法最好的一篇文章
冒泡排序无疑是最为出名的排序算法之一,从序列的一端开始往另一端冒泡(你可以从左往右冒泡,也可以从右往左冒泡,看心情),依次比较相邻的两个数的大小(到底是比大还是比小也看你心情)。 首先比较第一个数和第二个数的大小,我们发现 2 比 8 要小,那么保持原位,不做改动。位置还是 8…
树形数据结构总结二(AVL,2-3树,红黑树,B树,B+树)
AVL(平衡二叉树),它也是一种二分搜索树。它的特点是每个节点的左右子树之差不超过1。在某种特殊的情况下,普通的二分搜索树可能退化为链表,例如加入的元素顺序为1,2,3,4,5。这个时候查询的效率会从O(logn)退化为O(n)。而我们解决这种特定的情况就需要采用平衡二叉树来解…
一致性hash算法及其java实现
随着业务系统越来越大,我们需要对API的访问进行更多的缓存,使用Redis是一个很好的解决方案. 当一个请求到来,我们如何决定将这个请求的内容缓存在那台Redis服务器上?我们一一道来. 假设我们有X台服务器,当一个请求来到的时候,我们获取一个0-X的随机数,然后将内容缓存在该…
JavaScript 数据结构与算法之美 - 时间和空间复杂度
1. 什么是复杂度分析 ? 数据结构和算法解决是 “如何让计算机更快时间、更省空间的解决问题”。 因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能。 分别用时间复杂度和空间复杂度两个概念来描述性能问题,二者统称为复杂度。 复杂度描述的是算法执行时间(或占用空间)与数…