我对 Leetcode 痴迷的热评

发布: (2026年3月15日 GMT+8 14:05)
4 分钟阅读
原文: Dev.to

Source: Dev.to

Introduction

LeetCode 已经成为许多准备技术面试的开发者的主要焦点。虽然解算法题可以提升某些技能,但围绕刷成千上万题的现象让人对其真正价值产生疑虑。

The Problem with the LeetCode Obsession

  • Efficiency: 现代 AI 能在几分钟内解决许多 LeetCode 题目,但我们仍然在重复的模式上花费无数小时。
  • Retention: 大多数人在几个月前解过的题目已经记不清具体解法。练习往往变成记忆而非真正的理解。
  • Opportunity Cost: 用在无尽面试题上的时间本可以用于学习操作系统、探索 AI、参与开源项目、构建自动化工具或扩展真实应用——这些领域能提供更深入、更实用的知识。

What Matters More Than Solving Hundreds of Problems

Real‑World Skills

  • 学习 Linux、系统内部原理以及编排工具。
  • 参与开源项目并构建有用的实用工具。
  • 设计、部署和扩展生产级别的应用。

Competitive Programming (When It’s Fun)

Codeforces、CodeChef、AtCoder 等平台提供具有挑战性的比赛,适合喜欢竞争的人。然而,仅仅因为“公司要求”而去追求它们,容易导致倦怠。

Learning Data Structures and Algorithms (DSA) vs. Grinding

  • Fundamentals are essential: 理解树、图、递归、哈希表和链表等概念是有价值且是计算机科学的基础。
  • Depth over breadth: 通过少量精选题目来掌握这些概念更有益。
  • Diminishing returns: 解决数百甚至数千个相似的题目,在初始学习阶段之外几乎没有额外收益,往往沦为死记硬背。

The Cultural Issue

当前的思维方式把“解决前 100 道面试题”当作工程能力的终极标尺。这种观念:

  1. 把解谜题置于真实系统知识之上。
  2. 鼓励清单式心态,而非好奇心驱动的学习。
  3. 将面试准备变成收集徽章的活动,而不是技能提升。

Personal Reflection

我曾多年遵循一套 DSA 题单,逐题解答、做笔记并在以后复习。后来我遇到一些同伴,他们在搭建家庭实验室、定制 Linux 环境、贡献开源项目。他们的工作比再刷一批 LeetCode 题目更有吸引力。回顾过去,我意识到如果把时间更多投入到真实项目上会更有价值。

Takeaway

你有两条路可选:

  1. Follow the conventional route – 解决无数面试题,加入“打勾”人群。
  2. Pursue what excites you – 专注于构建系统、学习新技术,并在过程中获得乐趣。

选择让你感到快乐并能带来持久成长的道路。玩得开心。

0 浏览
Back to Blog

相关文章

阅读更多 »