← 返回目录

3. 分布式的TOP N问题

第 31 / 42 卷日期:

4、1G的文件,里面1行1个不超过16字节的词。内存限制1M,返回频数最高前100(同2)

步骤:

  1. 将单词 % 5000存入5000小文件
  2. 平均各文件约200K
  3. 对超过1M的文件继续分割直到小于200K
  4. 使用map统计各个词出现的频率
  5. 对5000词使用堆排序或归并排序

3. 分布式的TOP N问题

1、分布在100台电脑的海量数据,统计前十。

步骤:

  1. 各数据只出现在一台机器中
  2. 先在独立机器得到前十
  3. 若可以放入内存直接堆排序
  4. 若不可全放入内存:哈希分块 -> map统计 -> 归总堆排
  5. 再将100台计算机的TOP10组合起来堆排序
  6. 同一元素可同时出现在不同机器中

遍历所有数据,重新hash取模,使同一个元素只出现在单独的一台电脑中,然后采用上面方法先统计每台电脑TOP10再汇总起来

Astar算法

1. Astar算法简介

  1. 当前拥有一个地图,地图上面有起点和终点,还有障碍物
  2. 一个机器人在起点,希望用最短的距离到达终点
  3. Astar算法可以用来解决这个问题
图 36-1
图 36-1
全站分卷索引 · 42 卷
  1. 1代码随想录知识星球精华(最强八股文)第五版(算法篇)
  2. 2找出所有子集的异或总和再求和
  3. 3哈希表
  4. 4哈希冲突
  5. 5红黑树与AVL树
  6. 6平衡二叉树(AVL树)
  7. 7将有序数组转换为二叉搜索树
  8. 83. 分割(组合问题)
  9. 9方法论
  10. 10509. 斐波那契数
  11. 1162. 不同路径
  12. 1296. 不同的二叉搜索树
  13. 13322. 零钱兑换
  14. 14爬楼梯
  15. 15背包小总结 (01背包、完全背包)
  16. 16子序列问题
  17. 17674. 最长连续递增序列
  18. 18115. 不同的子序列
  19. 19总结
  20. 20技巧总结
  21. 21时间序列模型
  22. 22区间DP模型
  23. 23664. 奇怪的打印机
  24. 24编辑距离
  25. 25回文串
  26. 26DP递推公式总结
  27. 27排序算法
  28. 28其他算法
  29. 294. 分别用递归和非递归方式实现二叉树先序、中序和后序遍历
  30. 302. TOP N问题
  31. 313. 分布式的TOP N问题
  32. 322. Astar数据结构 + 公式
  33. 334. 代码实现
  34. 345. 总体代码
  35. 35堆排序
  36. 36单源最短路
  37. 37思维导图
  38. 38链表
  39. 39回溯
  40. 40贪心
  41. 41动态规划
  42. 42排序