一篇用Reddit 评论来分析 Claude Code 和 Codex 哪个更受欢迎的文章。| 原文
结论是Codex 明显更受欢迎,但同时 Claude Code 的用户量又明显更大。
考虑编程语言只有两种:被人骂的和没人用的,也许这两者到底谁能胜利还得等等。
文章中还提到GLM模型也开始被很多人作为最具性价比的模型所提及。
结论是Codex 明显更受欢迎,但同时 Claude Code 的用户量又明显更大。
考虑编程语言只有两种:被人骂的和没人用的,也许这两者到底谁能胜利还得等等。
文章中还提到GLM模型也开始被很多人作为最具性价比的模型所提及。
虽然名字里有个Data Systems,但更偏向于Machine Learning 。主页可以下载课件、笔记和讲课视频。
本课程分为三个部分,涵盖以下主题:
基础知识:深度学习、自动微分、CUDA编程、机器学习硬件
机器学习系统与优化:数据流图系统、机器学习编译、内存与图优化、机器学习并行化、自动并行化
大语言模型(LLM)系统:LLM训练、数据策展、推理与服务、注意力机制优化、缩放定律、检索增强生成(RAG)、LLM智能体。
以下是系统设计面试前你必须了解的关键算法清单,包含工作原理、优先级及典型应用场景,帮助你有针对性地准备:
1. Geohash(优先级★★★★★)
- 基于空间编码的地理位置划分算法
- 典型应用:基于位置的服务(LBS)
2. Quadtree(优先级★★★★★)
- 递归划分二维空间的树结构
- 典型应用:地理位置服务、空间索引
3. Consistent Hashing(优先级★★★★★)
- 哈希环实现节点负载均衡
- 典型应用:集群服务负载均衡
4. Leaky Bucket(优先级★★★★★)
- 流量限速算法,通过固定速率“漏水”控制请求
- 典型应用:限流
5. Token Bucket(优先级★★★★★)
- 令牌桶算法,允许突发流量且控制整体平均速率
- 典型应用:限流
6. Trie(优先级★★★★★)
- 字典树,支持前缀搜索
- 典型应用:搜索自动补全
7. Rsync(优先级★★★☆☆)
- 文件同步算法,支持高效增量传输
- 典型应用:文件传输
8. Raft/Paxos(优先级★★★☆☆)
- 分布式一致性算法
- 典型应用:分布式系统一致性保证
9. Bloom Filter(优先级★★★☆☆)
- 空间高效的概率型数据结构,快速判断元素是否存在
- 典型应用:减少昂贵的查找操作
10. Merkle Tree(优先级★★★☆☆)
- 树状哈希结构,用于节点间不一致性检测
- 典型应用:区块链、分布式存储数据校验
11. HyperLogLog(优先级★☆☆☆☆)
- 高效估算唯一元素数量的算法
- 典型应用:快速基数统计
12. Count-min Sketch(优先级★☆☆☆☆)
- 频率估计算法
- 典型应用:大数据流量统计
13. Hierarchical Timing Wheels(优先级★☆☆☆☆)
- 高效定时任务调度算法
- 典型应用:任务调度器
14. Operational Transformation(优先级★☆☆☆☆)
- 支持协作编辑的冲突解决算法
- 典型应用:多人协作编辑
总结:
- 地理位置相关算法(Geohash、Quadtree)优先级最高,适合LBS系统设计必备;
- 负载均衡(Consistent Hashing)、限流(Leaky Bucket、Token Bucket)、搜索(Trie)是核心基础算法;
- 一致性算法(Raft/Paxos)、布隆过滤器、Merkle树等为分布式系统设计的重要工具;
- 统计与调度类算法优先级较低,但在大规模系统中同样不可忽视。
系统设计面试中,理解算法原理、优缺点及实际应用场景,能帮助你更好地设计高效、可扩展的系统
1. Geohash(优先级★★★★★)
- 基于空间编码的地理位置划分算法
- 典型应用:基于位置的服务(LBS)
2. Quadtree(优先级★★★★★)
- 递归划分二维空间的树结构
- 典型应用:地理位置服务、空间索引
3. Consistent Hashing(优先级★★★★★)
- 哈希环实现节点负载均衡
- 典型应用:集群服务负载均衡
4. Leaky Bucket(优先级★★★★★)
- 流量限速算法,通过固定速率“漏水”控制请求
- 典型应用:限流
5. Token Bucket(优先级★★★★★)
- 令牌桶算法,允许突发流量且控制整体平均速率
- 典型应用:限流
6. Trie(优先级★★★★★)
- 字典树,支持前缀搜索
- 典型应用:搜索自动补全
7. Rsync(优先级★★★☆☆)
- 文件同步算法,支持高效增量传输
- 典型应用:文件传输
8. Raft/Paxos(优先级★★★☆☆)
- 分布式一致性算法
- 典型应用:分布式系统一致性保证
9. Bloom Filter(优先级★★★☆☆)
- 空间高效的概率型数据结构,快速判断元素是否存在
- 典型应用:减少昂贵的查找操作
10. Merkle Tree(优先级★★★☆☆)
- 树状哈希结构,用于节点间不一致性检测
- 典型应用:区块链、分布式存储数据校验
11. HyperLogLog(优先级★☆☆☆☆)
- 高效估算唯一元素数量的算法
- 典型应用:快速基数统计
12. Count-min Sketch(优先级★☆☆☆☆)
- 频率估计算法
- 典型应用:大数据流量统计
13. Hierarchical Timing Wheels(优先级★☆☆☆☆)
- 高效定时任务调度算法
- 典型应用:任务调度器
14. Operational Transformation(优先级★☆☆☆☆)
- 支持协作编辑的冲突解决算法
- 典型应用:多人协作编辑
总结:
- 地理位置相关算法(Geohash、Quadtree)优先级最高,适合LBS系统设计必备;
- 负载均衡(Consistent Hashing)、限流(Leaky Bucket、Token Bucket)、搜索(Trie)是核心基础算法;
- 一致性算法(Raft/Paxos)、布隆过滤器、Merkle树等为分布式系统设计的重要工具;
- 统计与调度类算法优先级较低,但在大规模系统中同样不可忽视。
系统设计面试中,理解算法原理、优缺点及实际应用场景,能帮助你更好地设计高效、可扩展的系统