`
eleven027
  • 浏览: 22678 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

TopK问题性能测试记录--分而治之

 
阅读更多

问题描述:从两亿个URL中找出出现次数最多的10个

1.测试准备:分两次随机生成2亿个url  

(1)数量:100,000,001   耗时:445,152

(2)数量:100,000,005   耗时:554,225

生成文件大小:2.88G

2.切分文件,每个文件大小:3,073K  共生成:987个文件    耗时:350,204

3.各取top100  共1,579,100B

4.统计TOP10   耗时:436,832

 

方法各处尚待改进,尤其是排序,采用的是Collections.sort  故效率较低

 

不过切分开来本身就挺耗时,如果采用改进型的BloomFilter  效率或许会大大提高

 

分享到:
评论

相关推荐

    大整数相乘问题--分而治之

    "分而治之"(Divide and Conquer)是一种有效的算法设计策略,它将复杂的问题分解为更小的子问题,然后逐个解决,最终合并子问题的解来得到原问题的答案。在这个大整数相乘的问题中,我们就是用这种策略来高效地完成...

    12-6 分而治之-章节总结 (2).mp4

    12-6 分而治之-章节总结 (2).mp4

    大型系统的性能测试与分析

    ### 大型系统的性能测试与分析 #### 一、引言 随着信息技术的快速发展,企业和组织对于信息系统的要求越来越高,特别是对于那些需要处理大量并发请求、高频交易的应用系统来说,其性能好坏直接影响到用户体验和...

    GreenHatHG#blog_md#PTA-L2-025-分而治之-vector-思维1

    刚开始是想存储在vector里面,然后如果摧毁i的话,就把对应的vector清空,还有查询别的vector,如果有i的话,则去掉,然后提交了一发,过了两个

    01-E-5 分而治之 & 01-E-6 数组求和-二分递归1

    分而治之是一种高效的问题解决方法,常用于算法设计。它的核心思想是将一个大问题分解成若干个规模较小的相似子问题,然后逐个解决子问题,最终合并子问题的解以得到原问题的解。这种方法有助于降低问题的复杂性,...

    Python - 考虑分而治之来解决复杂问题

    在此示例中,我们使用分而治之技术来实现合并...分而治之可以应用于各种问题领域,例如排序、搜索以及快速排序和二分搜索等分而治之算法。这是一种通过将复杂问题分解为更简单的子问题来有效解决复杂问题的强大方法。

    (9条消息) 【中国大学MOOC】算法设计与分析-分而治之篇一-最大子数组1-Java_t949500898的博客-CSDN博客.html

    (9条消息) 【中国大学MOOC】算法设计与分析-分而治之篇一-最大子数组1-Java_t949500898的博客-CSDN博客.html

    软件测试与改错-掌握有效测试的方法与技术

    - **测试内容覆盖**:接口测试、路径测试、功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试和安装/反安装测试等。 - **测试阶段和方式**:单元测试关注设计文档,集成测试兼顾...

    12-1 分而治之简介.mp4

    12-1 分而治之简介.mp4

    经典算法 分而治之算法.rar

    分而治之(Divide and Conquer)是一种重要的算法设计策略,它将复杂的问题分解成较小的子问题,分别解决后再合并结果,从而达到解决原问题的目的。在计算机科学和IT领域,这种策略广泛应用于各种算法的设计,如排序...

    5-1_组合优化_分而治之1

    分而治之是一种重要的算法设计策略,它通过将一个大问题分解成若干个小问题来解决。这种方法通常包括三个基本步骤:首先,将原问题分解为规模较小的相似子问题;其次,递归地解决这些子问题;最后,将子问题的解组合...

    分而治之算法 分而治之策略也可以运用到高效率的计算机算法的设计过程中。

    分而治之是一种重要的算法设计策略,其基本思想是将一个复杂的问题分解成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这种方法在计算机科学和算法设计中有着...

    android 分而治之 源码

    在Android开发领域,“分而治之”是一种常见的编程策略,它主张将复杂的问题分解为更小、更易于管理的部分,然后逐个解决这些小问题,最终达到解决整个问题的目标。这一概念在Android系统设计和应用程序开发中体现得...

    L2-025 分而治之

    L2-025 分而治之 这是一道简单题,写着篇博客主要是给自己提个醒,做题要学会变通 这道题我一直在考虑如何对点进行操作,结果超时,但实际上这题对边进行遍历一遍就好了 #include using namespace std; vectorv...

    有效的软件测试[英]

    **9.2 使用生产规模的数据库进行性能测试(Conduct Performance Testing with Production-Sized Databases)** - **关键点**:使用接近真实的负载来进行性能测试。 - **重要性**:这有助于确保系统在实际环境中能够...

    软件测试新手学习宝典

    - 测试内容广泛,包括接口测试、路径测试、功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试和安装/反安装测试等。 - 单元测试主要验证设计,集成测试验证设计和需求,系统测试和...

    高效软件测试 (英文版)

    - **分而治之**:将复杂的测试任务分解为较小的、易于管理的部分,有助于提高测试效率。 - **规定测试程序模板和其他设计标准**:使用统一的模板和标准,可以提高测试文档的质量和一致性。 - **从需求导出有效测试...

    七种经典排序算法[代码+详细注释+性能测试]

    **性能测试**:`排序算法耗时记录.xls`是一个电子表格,记录了对不同规模数据执行每种排序算法所需的时间,用于比较不同算法在实际运行中的效率。 **算法总结**:根据测试结果,可以发现对于大规模数据,快速排序和...

Global site tag (gtag.js) - Google Analytics