菜鸟笔记
提升您的技术认知

Leetcode 题解

Leetcode 介绍

阅读 : 27835

LeetCode 是一个非常棒的 OJ(Online Judge)平台,收录了许多互联网公司的算法题目,被称为刷题神器。

Leetcode有如下几个优点

  • 题目全部来自业内大公司的真实面试
  • 不用处理输入输出,精力全放在解决具体的问题上
  • 题目有丰富的讨论,可以参考别人的思路
  • 精确了解自己代码在所有提交代码中运行效率的排名
  • 支持多种主流语言:C/C++、Python、Java
  • 可以在线进行测试,方便调试

算法和数据结构是面试考察的重中之重,也是大家刷题时需要着重训练的部分。Leetcode 涉及的算法和数据结构,大约有以下内容

算法 Algorithms

  • 基础技巧:分治、倍增、二分、贪心
  • 排序算法:快速排序、归并排序、计数排序
  • 搜索算法:回溯、递归、剪枝技巧,深度优先遍历,广度优先遍历,二叉搜索树等
  • 图论:最短路径、最小生成树
  • 动态规划:背包问题、最长子序列

数据结构 Data Structures

  • 数组与链表:单 / 双向链表、跳舞链
  • 栈与队列
  • 哈希表
  • 堆:最大堆 / 最小堆
  • 树与图:最近公共祖先、并查集
  • 字符串:前缀树(字典树) / 后缀树