LeetCode

义项:在线编程题库平台
LeetCode

LeetCode是源自美国硅谷的在线编程题库与代码在线评测平台,以算法与数据结构类题目为主体,用户可在网页或客户端直接编写代码并提交,由后台评测程序自动判定对错。平台同时提供题库分类练习、周赛与双周赛、题解社区以及面向企业的技术测评与在线面试工具、[1]。其题目被众多互联网企业在技术面试中用作考察素材,中文站点以“力扣”为品牌独立运营[2]。

目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

LeetCode是一个提供编程题目与自动判题服务的在线平台,属于在线评测系统(Online Judge,简称 OJ)的一类。用户选择题目后,在网页内置的编辑器里按给定函数框架填写代码,提交后由后台将代码与隐藏测试用例一起运行,比对返回结果或标准输出,从而给出通过或失败的结论[3]。

平台题库以算法与数据结构题为主,同时收录数据库、Shell 与多线程等分类题目,支持 C、C++、Java、Python 等十余种编程语言[4]。每道题按简单、中等、困难三档标注难度,并配有标签用于按知识点筛选[1]。

中文站点由领扣网络(上海)有限公司运营,品牌名为“力扣”,与英文站点相对独立地开展本地化运营。

原理

平台的基本流程是编译、执行与比对三步。用户提交的代码先经过编译或语法检查,再与平台预先编写的驱动程序拼接成完整程序,因此用户只需实现指定函数,无需自行处理输入输出。驱动程序从测试用例文件中读入参数、调用用户函数,并把返回值序列化输出,判题程序再逐条与预期答案比较。

代码在限制资源与网络访问的隔离环境中运行,限制条件通常包括 CPU 时间、内存上限与系统调用白名单,代码试图访问外部网络或读取系统文件时会被拦截,以此保证平台安全与评测公平。评测时间统计的是程序消耗的 CPU 时间,而非用户感知的等待时间[5]。

判题机对每个测试用例都会重新创建一次解题类实例,全局变量与类内静态变量不会自动复位,跨用例共享状态可能导致本地测试正确而提交失败,这是常见的出错来源[6]。判定以输入输出是否符合预期为准,代码内部实现方式并不被检查,题目中诸如禁用某类库的软性约束无法由系统强制执行[3]。

发展历程

LeetCode于 2011 年在美国硅谷创立,早期定位为面向技术面试准备的题库网站,是较早出现的在线评测平台之一[2]。2015 年,平台转向面向互联网技术人才的成长平台,业务范围由单纯刷题扩展到学习工具与社区。2017 年底,其全球用户规模突破百万[7]。

2018 年 2 月,中文平台上线,LeetCode 正式进入中国市场并启用“力扣”品牌,同年 4 月运营主体领扣网络(上海)有限公司成立。2019 年 5 月平台推出付费会员服务,同年 12 月发布官方移动应用。

2021 年 12 月,力扣完成近千万美元 A 轮融资,由光速中国独家投资,资金用于核心产品升级与商业化生态建设[2]。据披露,当时平台覆盖超过 400 万中国编程开发者用户,年代码提交次数过亿[2]。2026 年 4 月,平台调整了竞赛积分规则,对新用户前 5 场竞赛采用按排名区间独立计分的方式[8]。

应用

在个人学习场景中,题库是按知识点或题单组织的练习入口,用户可依据标签、难度与完成状态筛选题目,并查看自己的做题进度[4]。平台另设以专题卡片形式组织的学习模块,覆盖机器学习、初级算法、算法面试题汇总等主题[1]。

在竞赛方面,平台定期举办周赛与双周赛,参赛者可获得竞赛积分与全球排名。新注册用户的基础积分为 1500 分,积分不低于 1600 分的用户按 5%、20%、75% 的比例划分为 Guardian、Knight 等段位,段位每周赛后重新计算[9]。

在求职准备与人才评估方面,平台提供企业题库与限时模拟面试,用户可选择目标公司完成 1 至 3 道面试题并获得报告[1]。面向企业的产品包括在线技术测评、远程协同面试与编程竞赛服务,判题引擎可给出内存与时间数据作为评估参考。部分高校也在日常教学中使用力扣题目辅助教学[2]。

局限

自动判题依据的是预设测试用例的输入输出比对,而非对解法质量的完整验证。用例覆盖不足时,效率低但结果正确的解法仍可能通过;反之,个别边界用例也可能让思路正确的代码被判错,判定结论的可靠性取决于测试数据的设计[3]。

题目描述中的软性约束无法被系统强制执行,例如要求不得使用某类库或某类数据结构时,平台只能比对输出结果,用户实际操作空间较大[3]。此外,评测环境对语言与标准库版本的支持存在滞后,部分新语法特性在平台上线时间晚于语言官方发布时间[5]。

从能力培养角度看,题库题目多为经过抽象的单点算法问题,与工程实践中涉及系统设计、协作与调试的完整开发流程存在差距;能够通过题目评测,并不等同于具备完整的软件开发能力[4]。

参见

  • 在线评测系统 —— LeetCode 所依托的技术形态,负责编译、运行与比对用户代码。

  • 算法 —— 题库题目的核心考查内容。

  • 数据结构 —— 题库另一类主要知识点,涉及链表、树、哈希表等。

  • 动态规划 —— 题库中常见的算法专题之一。

  • 编程竞赛 —— 平台周赛与双周赛所属的活动类型。

  • 技术面试 —— 平台题目被广泛用于考察候选人的场景。

词条评价
词条统计

浏览次数:2 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-28T18:51:32Z

历史版本

本条目引用的词条
在线评测系统 算法 数据结构 动态规划 编程竞赛 技术面试