http://hi.baidu.com/bellgrade/item/ac4febc7befd657089ad9eaa

海量数据库的应用,如国家的人口管理系统,户籍档案管理系统,在这样的海量数据库应用中,数据库的存储设计和结构优化(如索引优化)、数据库的查询优化及分页算法尤为重要!

随着互联网的日益普及,海量信息的增长,网格运算的到来,海量数据存储产品和海量数据存储技术方案的需求更为市场所需。

同时,实际的海量数据处理,更是涉及很多细节,包括 海量数据存储 (物理存储、逻辑存储、海量数据库的备份)、数据采集、海量数据查询(海量数据分页、海量数据排序)、海量数据安全和管理等。

百度、google海量数据搜索算法题解

下面是某同仁在baidu和google的笔试中遇到的两道“百度、google海量数据搜索算法题解”

Google和baidu,人家的数据量在那里摆着,他们的命题思路很明确,不要求具体语言,只要求程序的效率和可行性,题目大多数是关于海量数据搜索的算法问题。

百度、google的海量数据搜索算法题

  1、有1亿个浮点数,请找出其中对大的10000个。提示:假设每个浮点数占4个字节,1亿个浮点数就要站到相当大的空间,因此不能一次将全部读入内存进行排序。

  2、有一篇英文文章(也就是说每个单词之间由空格分隔),请找出“csdn”着个单词出现的次数,要求效率最高,并写出算法的时间级。

Peak Wong的海量数据搜索算法题解

  1、有1亿个浮点数,请找出其中对大的10000个。提示:假设每个浮点数占4个字节,1亿个浮点数就要站到相当大的空间,因此不能一次将全部读入内存进行排序。

  ~~~~~~~~~~~~~

  其实占用内存不算大, 可以接受. 呵呵.

  既然不可以一次读入内存, 那可以这么试试:

  方法1: 读出100w个数据, 找出最大的1w个, 如果这100w数据选择够理想, 那么最小的这1w个数据里面最小的为基准, 可以过滤掉1亿数据里面99%的数据, 最后就再一次在剩下的100w(1%)里面找出最大的1w个咯~~

  方法2: 分块, 比如100w一个块, 找出最大1w个, 一次下来就剩下100w数据需要找出1w个了.

  对于上面提到的找出100w个数据里面最大的1w个, 说起来比较罗嗦, 还是说说找到第1w个大的数字的方法:

  用快速排序的方法, 分2堆, 如果大的那堆个数N大于1w个, 继续对大堆快速排序一次分成2堆, 如果大堆个数N小于1w, 就在小的那堆里面快速排序一次, 找第10000-N大的数字; 递归以上过程, 就可以找到第1w大的数. 据说也是STL的search_n()的方法;

  参考上面的找出第1w大数字, 相信楼主就可以类似的方法找出前1w大数字了.

  第二个问题,其实很简单。

  假设不区分大小写,由于英文字母有26个,因此,可以将单词映射为数字。csdn被映射成:

  ( 'c '- 'a ')*32*32*32+( 's '- 'a ')*32*32+( 'd '- 'a ')*32+( 'n '- 'a ')

  即:( 'c '- 'a ')*(1 < <15)+( 's '- 'a ')*(1 < <10)+( 'd '- 'a ')*(1 < <5)+( 'n '- 'a ')

海量数据搜索、存储、查询、排序算法相关推荐

  1. 海量数据搜索算法优化-存储/查询/排序算法

    海量数据库的应用,如国家的人口管理系统,户籍档案管理系统,在这样的海量数据库应用中,数据库的存储设计和结构优化(如索引优化).数据库的查询优化及分页算法尤为重要! 随着互联网的日益普及,海量信息的增长 ...

  2. 邻接表存储 - 拓扑排序算法

    拓扑排序:用下面的例子介绍------> ---------------------------------------------------------------------------- ...

  3. Elasticsearch实现商品搜索(关键字查询 条件筛选 规格过滤 价格区间搜索 分页查询 排序查询 高亮查询)

    Elasticsearch实现商品搜索 商品搜索 1.根据关键字查询 2.条件筛选 2.1 品牌筛选 2.1.1 需求分析 2.1.2 代码实现 2.2 规格过滤 2.2.1 需求分析 2.2.2 代 ...

  4. 阿里文娱搜索排序算法实践和思考(附交流视频和PPT下载链接)

    开工大吉! 本次分享以优酷为例介绍阿里文娱视频搜索的相关业务和算法体系,视频搜索基础相关性和排序算法的特点和挑战以及技术实践方案:听众还了解了优酷在多模态视频搜索上的探索和实践技术方案. 内容摘要 ▽ ...

  5. 电商搜索“优化商品排序”实践方案

    一.案例背景 某导购类电商APP,与淘宝天猫等一线商家合作,亿级商品索引量,类目和子类目多层嵌套,商品有不同子款式和尺码,搜索和筛选需求复杂. 通过采用分销+券模式,优惠券帮助普通C用户降低了单品价格 ...

  6. 爱奇艺搜索排序算法实践(内附福利)

    7月3日下午,爱奇艺技术产品团队举办了"i技术会"线下技术沙龙,本次技术会的主题是"NLP与搜索".我们邀请到了来自字节跳动.去哪儿和腾讯的技术专家,与爱奇艺技 ...

  7. Python数据结构学习笔记——搜索与排序算法

    目录 一.搜索 (一)搜索的方法 (二)顺序搜索 (三)二分搜索 二.排序 内排序和外排序 (一)冒泡排序 (二)选择排序 (三)插入排序 (四)希尔排序 (五)归并排序 (六)快速排序 总结 一.搜 ...

  8. 程序员面试算法_程序员的前20个搜索和排序算法面试问题

    程序员面试算法 大家好,如果您正在准备编程工作面试或正在寻找新工作,那么您知道这不是一个容易的过程. 在您职业的任何阶段,您都必须幸运地接到电话并进行第一轮面试,但是在初学者方面,当您寻找第一份工作时 ...

  9. 程序员的前20个搜索和排序算法面试问题

    大家好,如果您正在准备编程工作面试或正在寻找新工作,那么您知道这不是一个容易的过程. 在您职业的任何阶段,您都必须幸运地接到电话并进行第一轮面试,但是在初学者方面,当您寻找第一份工作时就更加困难. 这 ...

最新文章

  1. YY的GCD 莫比乌斯反演
  2. 根据Apriltag进行角度和距离检测
  3. 《Web应用漏洞侦测与防御:揭秘鲜为人知的攻击手段和防御技术》——导读
  4. 《操作系统》CPU如何区分正在运行的是内核程序or应用程序?
  5. linux操作系统之信号量、互斥量在进程间的同步、文件锁
  6. 关于img 403 forbidden的一些思考
  7. 【深度学习】Win10安装TensorFlow_gpu(避坑必看)
  8. 第三章 正态性检验、自相关检验与异方差性检验
  9. Linux 命令(48)—— stat 命令
  10. Git下修改提交的author和email信息
  11. CVPR 2022 Oral | 目标检测新工作!南大开源AdaMixer:快速收敛的基于查询的目标检测器...
  12. Kinetics数据集下载
  13. PMOS管原理与应用
  14. class_weights的计算方式
  15. java anymatch_Java Stream anyMatch() API
  16. 帕克西AR一键换发型,让你秒变潮人!
  17. 使用fiddle处理跨域
  18. 中国企业出海应尽早把握海外社交媒体运营红利-出海传播趋势的言灵视角
  19. 语法入门*算法入门题单
  20. java创建画板_java画板的设计和创建

热门文章

  1. 阿里云短信验证码提示“Message“:“模板变量缺少对应参数值“
  2. 简单了解实体框架EF(Entity Framework)
  3. vscode 无法输入输出
  4. IM多人聊天-群聊头像合成方法
  5. 支付宝、微信后台不死的黑科技
  6. sed命令在Mac OS X上出现“未定义标签”错误
  7. pairs和iparis
  8. 阿里千万级实时监控系统技术揭秘TSDB时序业务场景
  9. c语言怎样写积分程序,C语言实现定积分求解方法
  10. GitHub:图像分类/目标检测资料