随笔分类 -  算法与数据结构

摘要:一致性哈希算法是1997年由麻省理工的几位学者提出的用于解决分布式缓存中的热点问题。大家有没有发现,我们之前介绍的例如快排之类的算法是更早的六七十年代,此时分布式还没有发展起来,大家往往还在提高单机性能。但是九十年代开始,逐渐需要用分布式集群来解决大型问题,相应的算法研究也就应运而生。在说到一致性哈 阅读全文
posted @ 2023-06-02 16:50 王若伊_恩赐解脱 阅读(334) 评论(0) 推荐(1) 编辑
摘要:前面两篇文章主要介绍了,快慢指针在链表环中的应用。除此之外,我们还常常利用快慢指针来查找单向链表中指定位置的节点。常见的经典题目有:1、查找倒数i位置的的节点2、查找中间节点我们依次来看一、查找快慢指针查找单链表中位于倒数第i个位置的元素力扣 剑指 Offer 22. 链表中倒数第k个节点 (htt 阅读全文
posted @ 2022-09-09 10:49 王若伊_恩赐解脱 阅读(309) 评论(0) 推荐(0) 编辑
摘要:在上一篇文章(https://www.cnblogs.com/jilodream/p/16666435.html)中,我们已经知道可以通过快慢指针,最终判断一个单向链表是否成环。一般在判断存在环之后,还有一个经典的问题:查找环的起点节点是哪里呢力扣 142. 环形链表 II (https://lee 阅读全文
posted @ 2022-09-08 18:48 王若伊_恩赐解脱 阅读(390) 评论(0) 推荐(0) 编辑
摘要:双指针是算法中非常重要的一个解决问题的思路。双指针顾名思义,就是有两个指针。根据双指针的方向及速度,我们一般将双指针分为以下几种场景1、快慢双指针2、左右双指针所谓快慢双指针是指,两个指针,一个快指针,一个慢指针,按照相同的方向,从链表(或数组)的一侧移动到另外一侧的场景。 如下图: 而左右双指针, 阅读全文
posted @ 2022-09-07 16:54 王若伊_恩赐解脱 阅读(735) 评论(0) 推荐(2) 编辑
摘要:限流是啥?维基百科是这样解释的:在计算机网络中,频率限制被应用在控制网络接口收到或发送的请求频次,它可以被用来阻止dos攻击或者是网络爬虫。直白点说,就是限制服务收到或发出的请求频次,保证整体服务可以正常健康的使用。谈到这里有人会想,只要我服务处理的速度足够快,那么频次高点也没问题,而且我们做的系统 阅读全文
posted @ 2021-08-25 00:50 王若伊_恩赐解脱 阅读(668) 评论(2) 推荐(0) 编辑
摘要:布隆过滤器是1970年由布隆提出的。他其实是一个很长的二进制向量外加一系列的随机函数函数来组成。 在正式说到布隆过滤器时,我们要先聊这样一个话题:在解决工程类问题时,很多问题的回答并不是只有这两种布尔状态:是 or 否而可能是这两种状态:一定没有 or 可能有亦或者可能是这两种状态:一定有 or 可 阅读全文
posted @ 2021-08-12 02:28 王若伊_恩赐解脱 阅读(837) 评论(0) 推荐(1) 编辑
摘要:C++为什么叫C plus plus?这是由于C++相当于继承C的语法后,增加了各方面的能力,所扩展出的一种新语法。在软件领域中 plus 有增加的味道。在这里B +树也一样,是B树的增强版。在学习B+树之前,最好是对B树有一定的了解。不了解的各位也没有关系,可以花费5分钟的时间读我的上一篇文章《数 阅读全文
posted @ 2021-01-22 14:46 王若伊_恩赐解脱 阅读(313) 评论(0) 推荐(0) 编辑
摘要:数据结构相对来说比较枯燥, 我尽量用最易懂的话,来把B树讲清楚。学过数据结构的人都接触过一个概念 二叉树。简单来说,就是每个父节点最多有两个子节点。为了在二叉树上更快的进行元素的查找,人们通过不断的改进,从而设计出一种高效搜索的树 平衡二叉查找树,也就是这个样子: 平衡二叉查找树的特性由于不是本文的 阅读全文
posted @ 2021-01-06 19:52 王若伊_恩赐解脱 阅读(525) 评论(2) 推荐(3) 编辑
摘要:背景 快速排序,是在上世纪60年代,由美国人东尼·霍尔提出的一种排序方法。这种排序方式,在当时已经是非常快的一种排序了。因此在命名上,才将之称为“快速排序”。这个算法是二十世纪的七大算法之一,平均情况下时间复杂度为Ο(nlogn),而且在O(nlogn)的情况下,实际的运算速度都要快于其他同时间复杂 阅读全文
posted @ 2016-10-13 00:12 王若伊_恩赐解脱 阅读(9898) 评论(3) 推荐(7) 编辑
摘要:上周没事扫扫系统原来的代码,突然发现这样一段代码: if(log.isInfoEnable()) { log.info("ID"+userID+"pwd"+userPwd); } 因为之前写的日志类都是公司内部自己的日志类,对log4j用的并不多。当时看了这段代码觉得很奇怪,代码意思我是明白的,lo 阅读全文
posted @ 2015-05-27 01:28 王若伊_恩赐解脱 阅读(926) 评论(0) 推荐(0) 编辑
摘要:今天回想起 一部大学时看的电影<决胜21点>中的概率题,想起来有点绕,又重新捋(此字读lv,你个文盲)了一遍。 题目大概是这样的: 参加一个电视节目,有三扇门,门后分别藏有两只山羊和一辆汽车。你选择的门后边是什么,你就可以作为奖品带回家。当然所有的参赛者都想选中汽车。 主持人让你任意选择一扇门,接着 阅读全文
posted @ 2015-05-14 00:06 王若伊_恩赐解脱 阅读(4758) 评论(0) 推荐(0) 编辑
摘要:找了下先序遍历二叉树C# 实现貌似没有 顺手些了一个 大致思路是: 传入根节点,然后依次循环其子节点推入到栈中, 当推入的节点没有子节点的时候(叶子)或者所有子节点均已经遍历过后(上一次遍历的节点是该节点的右子节点),再依次退出栈。 阅读全文
posted @ 2015-02-02 21:21 王若伊_恩赐解脱 阅读(1227) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示