Skip to content

nettee/little-algorithm

Repository files navigation

Little Algorithm

本仓库是我的《LeetCode 例题精讲》课程的文章索引与参考代码。课程系列文章于 2020 年在我的公众号连载。

如何使用本仓库

  • 系统学习 LeetCode 解题方法:
  • 根据 LeetCode 题目寻找参考代码:
    • 从下方「参考代码」部分的表格中找到 LeetCode 题目,找到对应的参考代码以及讲解文章链接

文章索引

参考代码

题号题目名题解代码对应文章
11Container With Most Water
盛最多水的容器
JavaLeetCode 11. 盛最多水的容器
19Remove Nth Node From End of List
删除链表的倒数第N个节点
JavaLeetCode 例题精讲 | 05 双指针×链表问题:快慢指针
39Combination Sum
组合总和
Java一套代码解决 Combination Sum 系列问题(LeetCode 39/40/216)
40Combination Sum II
组合总和 II
Java一套代码解决 Combination Sum 系列问题(LeetCode 39/40/216)
46Permutations
全排列
JavaLeetCode 例题精讲 | 08 排列组合问题:回溯法的候选集合
47Permutations II
全排列 II
JavaLeetCode 例题精讲 | 09 排列组合问题再探:回溯法的去重策略
53Maximum Subarray
最大子序和
Java(1, 2, 3, 4, 5)LeetCode 例题精讲 | 16 最大子数组和:子数组类问题的动态规划技巧
72Edit Distance
编辑距离
Java经典动态规划:编辑距离
77Combinations
组合
LeetCode 例题精讲 | 08 排列组合问题:回溯法的候选集合
78Subsets
子集
JavaLeetCode 例题精讲 | 03 从二叉树遍历到回溯算法
90Subsets II
子集 II
JavaLeetCode 例题精讲 | 09 排列组合问题再探:回溯法的去重策略
98Validate Binary Search Tree
验证二叉搜索树
JavaLeetCode 例题精讲 | 11 二叉树转化为链表:二叉树遍历中的相邻结点
102Binary Tree Level Order Traversal
二叉树的层序遍历
JavaLeetCode 例题精讲 | 13 BFS 的使用场景:层序遍历、最短路径问题
110Balanced Binary Tree
平衡二叉树
JavaLeetCode 例题精讲 | 10 二叉树直径:二叉树遍历中的全局变量
112Path Sum
路径总和
JavaLeetCode 例题精讲 | 02 Path Sum:二叉树的子问题划分
113Path Sum II
路径总和 II
JavaLeetCode 例题精讲 | 03 从二叉树遍历到回溯算法
123Best Time to Buy and Sell Stock III
买卖股票的最佳时机 III
Java一文教你股票买卖问题实用而装逼的解法
124Binary Tree Maximum Path Sum
二叉树中的最大路径和
JavaLeetCode 例题精讲 | 10 二叉树直径:二叉树遍历中的全局变量
141Linked List Cycle
环形链表
JavaLeetCode 例题精讲 | 05 双指针×链表问题:快慢指针
148Sort List
排序链表
Java链表综合题 | LeetCode 148. 链表排序
167Two Sum II - Input array is sorted
两数之和 II - 输入有序数组
JavaLeetCode 例题精讲 | 04 用双指针解 Two Sum:缩减搜索空间
189Rotate Array
旋转数组
JavaLeetCode 例题精讲 | 06 旋转数组问题:基本操作的威力
198House Robber
打家劫舍
JavaLeetCode 例题精讲 | 14 打家劫舍问题:动态规划的解题四步骤
206Reverse Linked List
反转链表
JavaLeetCode 例题精讲 | 01 反转链表:如何轻松重构链表
216Combination Sum III
组合总和 III
Java一套代码解决 Combination Sum 系列问题(LeetCode 39/40/216)
240Search a 2D Matrix II
搜索二维矩阵 II
JavaLeetCode 例题精讲 | 04 用双指针解 Two Sum:缩减搜索空间
242Valid Anagram
有效的字母异位词
JavaLeetCode 例题精讲 | 07 变位词问题:基本数据结构的威力
303Range Sum Query - Immutable
区域和检索 - 数组不可变
JavaLeetCode 例题精讲 | 18 前缀和:空间换时间的技巧
322Coin Change
零钱兑换
Java经典动态规划:「换硬币」系列三道问题详解
377Combination Sum IV
组合总和 Ⅳ
Java经典动态规划:「换硬币」系列三道问题详解
426Convert Binary Search Tree to Sorted Doubly Linked List
将二叉搜索树转化为排序的双向链表
JavaLeetCode 例题精讲 | 11 二叉树转化为链表:二叉树遍历中的相邻结点
463Island Perimeter
岛屿的周长
JavaLeetCode 例题精讲 | 12 岛屿问题:网格结构中的 DFS
518Coin Change 2
零钱兑换 II
Java经典动态规划:「换硬币」系列三道问题详解
543Diameter of Binary Tree
二叉树的直径
JavaLeetCode 例题精讲 | 10 二叉树直径:二叉树遍历中的全局变量
560Subarray Sum Equals K
和为K的子数组
JavaLeetCode 例题精讲 | 18 前缀和:空间换时间的技巧
563Binary Tree Tilt
二叉树的坡度
JavaLeetCode 例题精讲 | 10 二叉树直径:二叉树遍历中的全局变量
695Max Area of Island
岛屿的最大面积
JavaLeetCode 例题精讲 | 12 岛屿问题:网格结构中的 DFS
718Maximum Length of Repeated Subarray
最长重复子数组
JavaLeetCode 例题精讲 | 16 最大子数组和:子数组类问题的动态规划技巧
724Find Pivot Index
寻找数组的中心索引
JavaLeetCode 例题精讲 | 18 前缀和:空间换时间的技巧
827Making A Large Island
最大人工岛
JavaLeetCode 例题精讲 | 12 岛屿问题:网格结构中的 DFS
876Middle of the Linked List
链表的中间结点
JavaLeetCode 例题精讲 | 05 双指针×链表问题:快慢指针
978Longest Turbulent Subarray
最长湍流子数组
JavaLeetCode 例题精讲 | 17 动态规划如何拆分子问题,简化思路
1143Longest Common Subsequence
最长公共子序列
JavaLeetCode 例题精讲 | 15 最长公共子序列:二维动态规划的解法
1162As Far from Land as Possible
地图分析
JavaLeetCode 例题精讲 | 13 BFS 的使用场景:层序遍历、最短路径问题
1372Longest ZigZag Path in a Binary Tree
二叉树中的最长交错路径
Java二叉树问题太复杂?「三步走」方法解决它!
1373Maximum Sum BST in Binary Tree
二叉搜索子树的最大键值和
Java二叉树问题太复杂?「三步走」方法解决它!

About

《LeetCode 例题精讲》系列课程的参考代码

Topics

Resources

Stars

Watchers

Forks