深圳幻海软件技术有限公司 欢迎您!

  • 【数据结构】哈希应用

    目录一、位图1、位图概念2、位图实现2.1、位图结构2.2、比特位置12.3、比特位置02.4、检测位图中比特位3、位图例题3.1、找到只出现一次的整数3.2、找到两个文件交集3.3、找到出现次数不超过2次的所有整数二、布隆过滤器1、布隆过滤器提出2、布隆过滤器概念3、布隆过滤器实现3.1、布隆过滤

  • 【C++】哈希表封装unordered系列

     文章目录前言一、哈希表的封装总结前言在看本篇文章前大家尽量拿出上一篇文章的代码跟着一步步实现,否则很容易引出大量模板错误而无法解决。一、哈希表的封装首先我们要解决映射的问题,我们目前的代码只能映射整形,那么如何支撑浮点数等的映射呢?只需要多加一个模板参数就可以了:template<

  • 【高阶数据结构】封装unordered_map 和 unordered_set

    🌈欢迎来到数据结构专栏~~封装unordered_map和unordered_set(꒪ꇴ꒪(꒪ꇴ꒪)🐣,我是Scort目前状态:大三非科班啃C++中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤🤔:🔥真正的大师永远怀着一颗学徒的心作者水平很有

  • c++---哈希

    前言:    相信有些厉害的童鞋,已经刷在LeetCode,PTA,牛客时就经常看见有人用哈希表进行解决一些相应的题,那么这节就通过学习哈希来解决一些问题。哈希查找就是unordered系列关联式容器,它在c++11的时候才出现。在c++98的时候虽然红黑树作

  • ConcurrentHashMap原理详解(太细了)

    一、什么是ConcurrentHashMapConcurrentHashMap和HashMap一样,是一个存放键值对的容器。使用hash算法来获取值的地址,因此时间复杂度是O(1)。查询非常快。同时,ConcurrentHashMap是线程安全的HashMap。专门用于多线程环境。二、Concurr

  • 500W数据,20Wqps分词检索,架构如何设计?

    作者 | KG沈剑​有水友提问:沈哥,我们有个业务,类似于“标题分词检索”,并发量非常大,大概20W次每秒,数据量不是很大,大概500W级别,而且数据不会频繁更新,平均每天更新一次,请问有什么好的方案么?这是一个典型的,短文本分词搜索的问题,简单聊聊自己的经验。常见的文本检索方案

  • 微服务架构的数据库为什么喜欢分库分表?

    1.引入微服务架构想必大家都是有所耳闻。简单来说,微服务架构就是把传统的一个单体应用以一套"小服务"的方式进行开发,这些"小服务"可以运行在不同机器上,它们在自己的进程中运行,"小服务"之间可以通过像是HTTPAPI这样的轻量级的机制进行通信,这些"小服务"紧紧围绕项目的业务需求开发,同时,它们是以

  • 这五个字,能优化你80%的程序性能问题

    本篇关注程序性能优化。聚焦这个主题,本是偶然。始于玩笑,终于本心。本想找点高大上的让人直呼牛逼的东西,奈何能力有限,只能给大家一些既便宜、又好用、还简单的普通东西了,不知道你们会不会喜欢。分为五个主题,分别是『池』『序』『分』『减』『并』:一、『池』字诀池化,降低可重用对象的创建和回收代价。不知道你

  • 不吹牛,吃下我这篇,Java面试第一关算是过了

    你好,我是yes。这篇来盘盘集合类的面试题,这玩意被问的几率很高,算是基础中的基础了,几乎一面必定会涉及到一两题,所以需要好好关注下。我这篇几乎把集合相关核心面试点都盘了,可以说吃下这篇,这关差不多稳了。字挺多的,建议收藏先。对了,这篇过段时间也会收录到我的面试仓库,上面已经有很多面试题啦,求个st

  • 聊聊无锁编程设计

    本文转载自微信公众号「Code视角」,作者Code视角。转载本文请联系Code视角公众号。什么是无锁编程LOCK-FREE,字面解释就是不通过锁来解决多线程、多进程之间的数据同步和访问的程序设计方案。相对来说就是通过数据结构和算法来解决数据并发冲突的实现方案。无锁编程的实现「比较并交换Compare

  • Sentry 企业级数据安全解决方案-Relay PII 和数据清理

    本文档描述了一种我们希望最终对用户隐藏的配置格式。该页面仍然存在的唯一原因是当前Relay接受这种格式以替代常规数据清理设置。以下文档探讨了Relay使用和执行的高级数据清理配置的语法和语义。有时,这也称为PII清理。一个基本的例子假设您有一条异常消息,不幸的是,其中包含不应该存在的IP地址。你会写

  • 面试突击:说一下HashMap底层实现?及元素添加流程?

    HashMap是使用频率最高的数据类型之一,同时也是面试必问的问题之一,尤其是它的底层实现原理,既是常见的面试题又是理解HashMap的基石,所以重要程度不言而喻。HashMap底层实现HashMap在JDK1.7和JDK1.8的底层实现是不一样的,在JDK1.7中,HashMap使用的是数组+链表

  • 面试被问及 Hash 与 History 的区别,该怎么回答?

    为什么推荐使用hash模式?创建项目时,vue-router默认使用hash模式,设置模式的时候到底该使用hash还是history模式呢?先了解它们的实现原理,搞清楚之间的区别,就知道什么时候该选择什么模式了。一、实现原理hash原理hash通过监听浏览器onhashchange事件变化,查找对应

  • 开发 | 前端如何实现大文件快速上传

    如何实现一个大文件上传,以及在上传中如何实现断点续传的功能呢?本文将从零搭建前端和服务端,实现一个大文件上传和断点续传的demo:前端:vueelement-ui服务端:nodejs大文件上传前端前端大文件上传网上的大部分文章已经给出了解决方案,核心是利用Blob.prototype.slice方法

  • 一文看懂HashMap

    HashMap是面试中经常问到的一个知识点,也是判断一个候选人基础是否扎实的标准之一,因为通过HashMap可以引出很多知识点,比如数据结构(数组、链表、红黑树)、equals和hashcode方法,除此之外还可以引出线程安全的问题,HashMap是我在初学阶段学到的设计的最为巧妙的集合,里面有很多

  • 我说我了解集合类,面试官竟然问我为啥HashMap的负载因子不设置成1!?

     在Java基础中,集合类是很关键的一块知识点,也是日常开发的时候经常会用到的。比如List、Map这些在代码中也是很常见的。个人认为,关于HashMap的实现,JDK的工程师其实是做了很多优化的,要说所有的JDK源码中,哪个类埋的彩蛋最多,那我想HashMap至少可以排前五。也正是因为如

  • 万万没想到,HashMap默认容量的选择,竟然背后有这么多思考!?

    集合是Java开发日常开发中经常会使用到的,而作为一种典型的K-V结构的数据结构,HashMap对于Java开发者一定不陌生。在日常开发中,我们经常会像如下方式以下创建一个HashMap:复制Map<String, String> map = ne

  • Java中HashSet集合是如何对自定义对象进行去重

    Java中Set接口是Collectio的子接口,Set集合不允许包含相同的元素。如果添加相同的元素,add()会返回FALSE,新元素不会加入。Set集合常用于元素为数字、字符串去重等,但是当元素为自定义对象类型时,Set去重是否与我们预计一致?下面将以HashSet为例,通过一系列试验来一步步验

  • Redis不是只有5种基本数据类型?

    面试官:我看你简历上说在你的项目中使用了Redis,并使用它做了缓存,你能给我介绍一下Redis的五种基本数据类型吗?于是说道:emmm,Redis中有string字符串,hash哈希,list列表,set无序集合,zset有序集合,这五种数据类型。面试官:除了这五种基本数据类型你还了解过其他Red

  • 如何判断一个元素是否在亿级数据是否存在

    前几天看到强哥(“纯洁的微笑”)转载的一篇文章《如何判断一个元素是否在亿级数据是否存在》。对其中的解决思路有一些不一样的想法,先阐述一下问题:现在有一个非常庞大的数据,假设全是int类型。给出一个数,判断这个数是否在其中(尽可能的高效)。题目要求文章给出了思路:首先想到的是Hash算法,它的时间复杂

推荐阅读