首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何 100 亿 URL 找出相同 URL?

来源 | https://doocs.github.io/advanced-java/ 题目描述 给定 a、b 个文件,各存放 50 亿个 URL,每个 URL 各占 64B,内存限制是 4G。...请找出 a、b 个文件共同 URL。 解答思路 每个 URL 占 64B,那么 50 亿个 URL占用空间大小约为 320GB。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

2.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

面试:如何 100 亿 URL 找出相同 URL?

---- 来源:8rr.co/FR7V 题目描述 给定 a、b 个文件,各存放 50 亿个 URL,每个 URL 各占 64B,内存限制是 4G。请找出 a、b 个文件共同 URL。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...那么接下来,我们只需要求出这 1000 对小文件相同 URL 就好了。 接着遍历 ai( i∈[0,999] ),把 URL 存储到一个 HashSet 集合。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

4.4K10

面试:如何 100 亿 URL 找出相同 URL?

来源:8rr.co/FR7V 题目描述 给定 a、b 个文件,各存放 50 亿个 URL,每个 URL 各占 64B,内存限制是 4G。请找出 a、b 个文件共同 URL。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...那么接下来,我们只需要求出这 1000 对小文件相同 URL 就好了。 接着遍历 ai( i∈[0,999] ),把 URL 存储到一个 HashSet 集合。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

2.3K20

我有个列表,现在需要找出个列表不同元素,怎么做?

一、前言 前几天在帮助粉丝解决问题时候,遇到一个简单小需求,这里拿出来跟大家一起分享,后面再次遇到时候,可以从这里得到灵感。...二、需求澄清 问题如下所示: 三、实现过程 这里【听风】一开始给了一个集合求差集方法,差强人意。 不过并没有太满足要求,毕竟客户需求是分别需要个列表不重复元素。...后来【听风】又给了一个方法,如下所示: 这次是完全贴合要求了,代码运行之后,可以得到预期效果: 这里再补充一个小知识点,提问如下图所示: 后来【听风】给了一个方法,如下图所示: 原来列表转df...是这样玩,接下来你就可以把数据导出为Excel等其他格式了,不再赘述。...这篇文章主要盘点一个Python实用案例,这个案例可以适用于实际工作中文件名去重等工作,感谢【听风】大佬给予耐心指导。

3.2K10

面试经历:如何 100 亿 URL 找出相同 URL?

题目描述 给定 a、b 个文件,各存放 50 亿个 URL,每个 URL 各占 64B,内存限制是 4G。请找出 a、b 个文件共同 URL。...使用同样方法遍历文件 b,把文件 b URL 分别存储到文件 b0, b1, b2, ..., b999 。...这样处理过后,所有可能相同 URL 都在对应小文件,即 a0 对应 b0, ..., a999 对应 b999,不对应小文件不可能有相同 URL。...那么接下来,我们只需要求出这 1000 对小文件相同 URL 就好了。 接着遍历 ai( i∈[0,999] ),把 URL 存储到一个 HashSet 集合。...然后遍历 bi 每个 URL,看在 HashSet 集合是否存在,若存在,说明这就是共同 URL,可以把这个 URL 保存到一个单独文件

1.9K00

Redis进阶-如何海量 key 找出特定key列表 & Scan详解

---- 需求 假设你需要从 Redis 实例成千上万 key 找出特定前缀 key 列表来手动处理数据,可能是修改它值,也可能是删除 key。...那该如何海量 key 找出满足特定前缀 key 列表来?...它不是第一维数组第 0 位一直遍历到末尾,而是采用了高位进位加法来遍历。之所以使用这样特殊方式进行遍历,是考虑到字典扩容和缩容时避免槽位遍历重复和遗漏....高位进位法左边加,进位往右边移动,同普通加法正好相反。但是最终它们都会遍历所有的槽位并且没有重复。...它会同时保留旧数组和新数组,然后在定时任务以及后续对 hash 指令操作渐渐地将旧数组挂接元素迁移到新数组上。这意味着要操作处于 rehash 字典,需要同时访问新旧个数组结构。

4.5K30

ASP.NET Core如影随形”依赖注入”: 不同ServiceProvider说起

由于前面章已经涵盖了依赖注入在管道构建过程以及管道在处理请求过程应用,但是内容相对分散和零碎,我们有必要针对这个主题作一个归纳性介绍。...采用依赖注入服务均由某个ServiceProvider来提供,但是在ASP.NET Core管道涉及到不同ServiceProvider,其中一个是在管道成功构建后创建并绑定到WebHost上...在WebHost创建过程,WebHostBuilder需要向这个ServiceCollection对象注册种类型服务:一种是确保管道能够被成功构建并顺利处理请求所必需服务,我们不妨将它们称为系统服务...ServiceProvidersFeature特性 在了解了种类型ServiceProvider各种具有的生命周期和相互关系之后,我们需要了解这个为请求处理提供服务ServiceProvider是如何被创建...,又是如何被回收释放

1.6K80

【Leetcode -1171.链表删去总和值为零连续节点 -1669.合并个链表】

Leetcode -1171.链表删去总和值为零连续节点 题目:给你一个链表头节点 head,请你编写代码,反复删去链表总和 值为 0 连续节点组成序列,直到不存在这样序列为止。...对于链表每个节点,节点值: - 1000 <= node.val <= 1000....思路:思路相当是双指针,创建一个哨兵位dummy,prevdummy开始,cur每次prevnext 开始遍历,每次遍历 cur val 都进行累减,如果累减结果有等于 0 ,就证明...,每次curprevnext开始遍历 // cur val开始累减,如果累减结果为0,即直接让prevnext指向curnext struct ListNode*...题目:给你个链表 list1 和 list2 ,它们包含元素分别为 n 个和 m 个。

8510

如何用Java找出个List重复元素,读这一篇就够了

在Java编程,我们经常需要找出个列表(List)重复元素。在本文中,我们将探讨三种方法来实现这一目标。方法一:使用HashSetJavaHashSet是一个不允许有重复元素集合。...我们可以利用这个特性,通过合并个List并计算差集,来找出重复元素。以下是一个通过使用HashSet数据结构来找出个List重复元素代码示例。...我们可以使用Stream APIdistinct()方法来过滤掉重复元素,然后通过filter()方法找出个List重复元素。...以下是一个通过使用Stream API来找出个List重复元素代码示例。import java.util....方法三:使用HashMap我们也可以使用HashMap来找出个List重复元素。将每个元素作为键,将其出现次数作为值存储在HashMap

50430

Python 实现帕累托,漏斗,雷达图

前言 用 Python pyecharts 库实现帕累托图,转化漏斗图,RFM 客户分类以后雷达图。 可收藏当做模板使用,先来看看实现效果: ? ? ?...因为需要计算累计占比,所以需要计算所有商品销售额总和。 增加一计算累计销售额占比,增加一标记到此类商品时,销售额占比是否达到 80%,处理代码如下: ?...通过埋点事件配置关键业务路径,可以分析多种业务场景下转化和流失情况,不仅找出产品潜在问题位置,还可以定位每个环节流失用户,进而定向营销促转化。...现在有一份电商数据,用户行为数据,浏览到交易成功数据,以此数据绘制每个行为阶段转化情况。 浏览商品-搜索-添加购物车-下单-付款-交易成功,每个环节转化率=此阶段人数/上一阶段人数。...RFM 分析就是通过三个关键指标对客户进行观察和分类,判断每类细分用户价值。针对不同特征客户进行相应营销策略。 现在有一份数据,包含客户消费时间,金额,名称,导入数据: ?

1.1K10

Python 实现帕累托,漏斗,雷达图

前言 用 Python pyecharts 库实现帕累托图,转化漏斗图,RFM 客户分类以后雷达图。 可收藏当做模板使用,先来看看实现效果: ? ? ?...因为需要计算累计占比,所以需要计算所有商品销售额总和。 增加一计算累计销售额占比,增加一标记到此类商品时,销售额占比是否达到 80%,处理代码如下: ?...通过埋点事件配置关键业务路径,可以分析多种业务场景下转化和流失情况,不仅找出产品潜在问题位置,还可以定位每个环节流失用户,进而定向营销促转化。...现在有一份电商数据,用户行为数据,浏览到交易成功数据,以此数据绘制每个行为阶段转化情况。 浏览商品-搜索-添加购物车-下单-付款-交易成功,每个环节转化率=此阶段人数/上一阶段人数。...RFM 分析就是通过三个关键指标对客户进行观察和分类,判断每类细分用户价值。针对不同特征客户进行相应营销策略。 现在有一份数据,包含客户消费时间,金额,名称,导入数据: ?

1K10

快速入门Tableau系列 | Chapter03【基本表、树状图、气泡图、词云】

这时准备工作做好了,下面就可以作图了: ①主要类型->,记录数->行,累计票房->颜色。智能显示选择第一个往下数4树状图。 ?...==②票房替代记录数:颜色总和->删除,累计票房(万)->颜色 == ? ③筛选出票房大于某值类型:图右侧空白点击右键->筛选器->累计票房。在右侧大小轴随意拖动选择筛选值 ?...8.2 香港不同地区酒店数量与价格 ①地区->,记录数->行,价格(应该显示为平均值)->颜色。智能显示选择树状图。 ?...②价格替代颜色:颜色总和->删除,累计票房(万)->颜色,价格->维度->平均值 ? ③设置标签:记录时->标签,价格->标签 ?...步骤: ①上映年份->页面,记录数->行,累计票房-> ②筛选年份(去掉NULL),筛选主要类型(动作) 上面的步在前面已经多次出现就不演示了。

2K31

手把手 | 数据科学速成课:给Python新手实操指南

因此,如何开始学习Python?由于我们更喜欢通过实践来学习方式,所以我们总是让新员工Codecademy Python课程开始。...本着学习原则,我们建议您自己找出如何读取这个数据集。最后,你应该建立个独立DataFrames,每个数据集都需要有一个。 小贴士:在这个文件,我们都有不同分隔符。...在我们例子,有很多与我们问题无关,例如会话媒介/来源。...添加自变量X:访问量累计总和 我们自变量是页面访问量。但是,我们不能简单地将会话页面访问量计算在内,因为早期会话页面访问会影响转换概率。...因此,我们创建一个新,用来计算用户页面访问量累计总和。这才是我们自变量X。

1.1K50

深入MySQL窗口函数:原理和应用

分区表达式可以是一个或多个列名,用于确定如何将结果集分成不同分区。 ORDER BY ASC | DESC(可选):指定窗口内行排序顺序。...窗口函数与聚合函数区别 窗口函数和聚合函数在MySQL中都是用于数据分析和报告强大工具,但它们之间存在明显区别。以下将通过具体例子来说明这不同。...当使用窗口函数 PERCENT_RANK() 和 CUME_DIST() 时,这些函数通常用于计算结果集中行相对排名和累积分布。下面是一个示例,展示了如何在一个查询同时使用这个函数。...: 对于每天销售数据,找出当天销售额排在第二位销售人员及其销售额。...三、常见应用场景 窗口函数在多个场景中非常有用,以下是几个典型示例: 计算累计总和:使用SUM()函数和OVER()子句,可以轻松计算每一行累计总和,这在分析销售数据、财务报表等方面非常有用。

48210
领券