前言

本目录将不断更新记录leetcode的刷题日记。

二叉树

序号 标题 难度 标签
1 108 将有序数组转换为二叉搜索树 简单 树、深度优先搜索
2 538 把二叉搜索树转换为累加树 简单
3 102 二叉树的层序遍历 中等 树、广度优先搜索、深度优先搜索
4 103 二叉树的锯齿形层次遍历 中等 栈、树、广度优先搜索
5 111 二叉树的最小深度 简单 树、深度优先搜索、广度优先搜索
6 543 二叉树的直径 简单
7 101 对称二叉树 简单 树、深度优先搜索、广度优先搜索
8 617 合并二叉树 简单
9 226 翻转二叉树 简单
10 104 二叉树的最大深度 简单 树、深度优先搜索
11 437 路径总和 III 简单
12 94 二叉树的中序遍历 中等 栈、树、哈希表
13 114 二叉树展开为链表 中等 树、深度优先搜索
14 105 从前序与中序遍历序列构造二叉树 中等 树、深度优先搜索、数组
15 236 二叉树的最近公共祖先 中等

数组

序号 标题 难度 标签
1 1 两数之和 简单 数组、哈希表
2 26 删除排序数组中的重复项 简单 数组、双指针
3 27 移除元素 简单 数组、双指针
4 35 搜索插入位置 简单 数组、二分查找
5 169 多数元素 简单 位运算、数组、分治算法
6 448 找到所有数组中消失的数字 简单 数组
7 581 最短无序连续子数组 简单 数组
8 48 旋转图像 中等 数组
9 238 除自身以外数组的乘积 中等 数组
10 11 盛最多水的容器 中等 数组、双指针
11 1295 统计位数为偶数的数字 简单 数组
12 4 寻找两个正序数组的中位数 困难 数组、二分查找、分治算法
13 287 寻找重复数 困难 数组、双指针、二分查找

动态规划

序号 标题 难度 标签
1 198 打家劫舍 简单 动态规划
2 70 爬楼梯 简单 动态规划
3 121 买卖股票的最佳时机 简单 数组、动态规划
4 53 最大子序和 简单 数组、动态规划、分治算法
5 338 比特位计数 简单 位运算、动态规划
6 64 最小路径和 中等 数组、动态规划
7 647 回文子串 中等 字符串、动态规划
8 62 不同路径 中等 数组、动态规划
9 96 不同的二叉搜索树 中等 树、动态规划

并发编程

序号 标题 难度 标签
1 1114 按序打印 简单 多线程
2 1115 交替打印FooBar 中等 多线程
3 1116 打印零与奇偶数 中等 多线程
4 1117 H2O 生成 中等 多线程
5 1195 交替打印字符串 中等 多线程
6 1226 哲学家进餐 中等 多线程

字符串

序号 标题 难度 标签
1 13 罗马数字转整数 简单 数学、字符串
2 14 最长公共前缀 简单 字符串
3 20 有效的括号 简单 栈、字符串
4 38 外观数列 简单 字符串
5 28 实现 strStr() 简单 字符串、双指针
6 49 字母异位词分组 中等 字符串、哈希表

链表

序号 标题 难度 标签
1 21 合并两个有序链表 简单 链表
2 206 反转链表 简单 链表
3 141 环形链表 简单 链表、双指针
4 160 相交链表 简单 链表
5 234 回文链表 简单 链表、双指针
6 148 排序链表 中等 链表、排序

回溯算法

序号 标题 难度 标签
1 46 全排列 中等 回溯算法
2 22 括号生成 中等 字符串、回溯算法
3 39 组合总和 中等 数组、回溯算法
4 78 子集 中等 位运算、数组、回溯算法

数学

序号 标题 难度 标签
1 9 回文数 简单 数学
2 136 只出现一次的数字 简单 位运算、哈希表

序号 标题 难度 标签
1 739 每日温度 简单 栈、哈希表
2 215 数组中的第K个最大元素 中等 堆、分治算法

设计

序号 标题 难度 标签
1 155 最小栈 简单 栈、设计
2 208 实现 Trie (前缀树) 中等 设计、字典数

贪心算法

序号 标题 难度 标签
1 1221 分割平衡字符串 简单 贪心算法、字符串
2 406 根据身高重建队列 中等 贪心算法

序号 标题 难度 标签
1 347 前 K 个高频元素 中等 堆、哈希表

位运算

序号 标题 难度 标签
1 461 汉明距离 中等 位运算

LeetCode 题解目录的更多相关文章

  1. Leetcode 题解 - 目录

    本文从 Leetcode 中精选大概 200 左右的题目,去除了某些繁杂但是没有多少算法思想的题目,同时保留了面试中经常被问到的经典题目. 算法思想 双指针 排序 贪心思想 二分查找 分治 搜索 动态 ...

  2. 【LeetCode题解】3_无重复字符的最长子串(Longest-Substring-Without-Repeating-Characters)

    目录 描述 解法一:暴力枚举法(Time Limit Exceeded) 思路 Java 实现 Python 实现 复杂度分析 解法二:滑动窗口(双指针) 思路 Java 实现 Python 实现 复 ...

  3. 【LeetCode题解】225_用队列实现栈(Implement-Stack-using-Queues)

    目录 描述 解法一:双队列,入快出慢 思路 入栈(push) 出栈(pop) 查看栈顶元素(peek) 是否为空(empty) Java 实现 Python 实现 解法二:双队列,入慢出快 思路 入栈 ...

  4. 【LeetCode题解】232_用栈实现队列(Implement-Queue-using-Stacks)

    目录 描述 解法一:在一个栈中维持所有元素的出队顺序 思路 入队(push) 出队(pop) 查看队首(peek) 是否为空(empty) Java 实现 Python 实现 解法二:一个栈入,一个栈 ...

  5. 【LeetCode题解】844_比较含退格的字符串(Backspace-String-Compare)

    目录 描述 解法一:字符串比较 思路 Java 实现 Python 实现 复杂度分析 解法二:双指针(推荐) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记可以 ...

  6. 【LeetCode题解】25_k个一组翻转链表(Reverse-Nodes-in-k-Group)

    目录 描述 解法一:迭代 思路 Java 实现 Python 实现 复杂度分析 解法二:递归(不满足空间复杂度) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记 ...

  7. 【LeetCode题解】24_两两交换链表中的节点(Swap-Nodes-in-Pairs)

    目录 描述 解法一:迭代 思路 Java 实现 Python 实现 复杂度分析 解法二:递归(不满足空间复杂度要求) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解 ...

  8. 【LeetCode题解】347_前K个高频元素(Top-K-Frequent-Elements)

    目录 描述 解法一:排序算法(不满足时间复杂度要求) Java 实现 Python 实现 复杂度分析 解法二:最小堆 思路 Java 实现 Python 实现 复杂度分析 解法三:桶排序(bucket ...

  9. 【LeetCode题解】19_删除链表的倒数第N个节点(Remove-Nth-Node-From-End-of-List)

    目录 描述 解法:双指针 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记可以访问我的 github. 描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回 ...

随机推荐

  1. php实用正则

    1 Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ 2 域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z ...

  2. 剑指Offer之替换空格

    题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 函数实现: package s ...

  3. Life In Changsha College- 第四次冲刺

    第四次冲刺任务 整体功能实现. 用户故事 用户打开“生活在长大”的界面,选择登录 已注册过则输入用户名和密码直接登录 未注册用户则可选择注册功能,注册成功后登录 登录成功则弹出提示框 进行留言 系统结 ...

  4. Spring/SpringBoot常用注解总结

    转自:[Guide哥] 0.前言 可以毫不夸张地说,这篇文章介绍的 Spring/SpringBoot 常用注解基本已经涵盖你工作中遇到的大部分常用的场景.对于每一个注解我都说了具体用法,掌握搞懂,使 ...

  5. 【Java8新特性】关于Java8中的日期时间API,你需要掌握这些!!

    写在前面 Java8之前的日期和时间API,存在一些问题,比如:线程安全的问题,跨年的问题等等.这些问题都在Hava8中的日期和时间API中得到了解决,而且Java8中的日期和时间API更加强大.立志 ...

  6. Java实现 LeetCode 729 我的日程安排表 I(二叉树)

    729. 我的日程安排表 I 实现一个 MyCalendar 类来存放你的日程安排.如果要添加的时间内没有其他安排,则可以存储这个新的日程安排. MyCalendar 有一个 book(int sta ...

  7. Java实现 LeetCode 581 最短无序连续子数组(从两遍搜索找两个指针)

    581. 最短无序连续子数组 给定一个整数数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序. 你找到的子数组应是最短的,请输出它的长度. 示例 1: 输入: ...

  8. Java实现蓝桥杯突击战

    突击战 你有n个部下,每个部下需要完成一项任务.第i个部下需要你花Bi分钟交待任务,然后他会立刻独立地. 无间断地执行Ji分钟后完成任务.你需要选择交待任务的顺序, 使得所有任务尽早执行完毕(即最后一 ...

  9. Java实现 蓝桥杯VIP 算法提高 连接乘积

    算法提高 连接乘积 时间限制:1.0s 内存限制:256.0MB 问题描述 192这个数很厉害,用它分别乘以1.2.3,会得到: 192 x 1 = 192 192 x 2 = 384 192 x 3 ...

  10. Java实现 蓝桥杯 算式最大值

    算式最大值 [问题描述] 给定: 1)N个正整数A1, A2, - AN; 2)P个加号+和Q个减号-; (P+Q=N-1) 3)K对括号() 请你使用全部整数.加减号和括号,组成一个合法的算式(A1 ...