前言

本目录将不断更新记录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. MySQL高可用篇之MHA集群

    1 准备工作 1.1 修改主机名 vim /etc/hosts # 添加对应主机 192.168.28.128 mha1 192.168.28.131 mha2 192.168.28.132 mha3 ...

  2. Asp.net Identity身份与权限体系设计

    1 Identity 介绍 2 授权系统 图1 体系结构 3 自定义 Attribute 自定义 Attribute 继承于 AuthorizeAttribute,AuthorizeAttribute ...

  3. [PHP学习教程 - 网络]002.$_SERVER["SCRIPT_NAME"]、$_SERVER["PHP_SELF"]、$_SERVER["QUERY_STRING"]、$_SERVER["REQUEST_URI"]介绍($_SERVER URL Infomation)

    引言:在使用原生PHP的时候,对于URL路径的切割,如:域名,查询参数等等的提取,通常绝大多数兄弟会忽略$_SERVER中定义的内置常量的关系,这里为大家讲解一下. 常用的URL请求路径$_SERVE ...

  4. [工具推荐]003.Tortoisegit使用教程(补充)

    前文介绍:       在前文<[工具推荐]003.Tortoisegit使用教程>中详细介绍了如何使用Tortoisegit的使用,但是大家使用后反映一点,就是每次操作都需要输入账号名和 ...

  5. python 03—字符串分割

    字符串分割 例:sentenc = "I am an Englist sentenc" sentence.split() split()把字符串按照空格进行分割,所以得到的结果是 ...

  6. 获取Class实例的方式与类加载器

    1. java.lang.Class:   是反射的源头 2.如何获取Class的实例(3种) 3.关于类的加载器 TestReflection2 package com.aff.reflection ...

  7. 「MoreThanJava」计算机系统概述

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  8. Spring boot Sample 007之spring-boot-log4j2

    一.环境 1.1.Idea 2020.1 1.2.JDK 1.8 二.目的 spring boot 整合多环境log4j2 三.步骤 3.1.点击File -> New Project -> ...

  9. 【SpringMVC】使用三层架构实现登录,注册。(上篇)

    构思 界面层 1.jsp [见名知义] failed.jsp-->失败页面,登录.注册失败就跳转至失败页面 index.jsp-->默认生成的界面,没什么用 login.jsp--> ...

  10. Java实现 LeetCode 125 验证回文串

    125. 验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 示例 1: 输入: "A man, ...