项目作者: shaoyuanhangyes
项目描述 :
LeetCode Solution by Cpp SourceCode
高级语言: C++
项目地址: git://github.com/shaoyuanhangyes/LeetCode.git
LeetCode
解决题目的总数: 138/1753
微信公众号: 工程师Ruojhen
算法-动态规划
算法-回溯
设计
VIP收费题目合辑
数据结构-数组
1(1) 两数之和
两数之和
2(26) 删除排序数组中的重复项
删除排序数组中的重复项
3(27)移除元素
移除元素
4(35)搜索插入位置
搜索插入位置
5(53)最大子序和
最大子序和
6(66) 加一
加一
7(88) 合并两个有序数组
合并两个有序数组
8(4) 寻找两个正序数组的中位数(Hard)
寻找两个正序数组的中位数)
9(15) 三数之和(Medium)
三数之和)
10(121) 买卖股票的最佳时机
买卖股票的最佳时机
11(122) 买卖股票的最佳时机Ⅱ
买卖股票的最佳时机Ⅱ
12(123) 买卖股票的最佳时机Ⅲ(Hard)
买卖股票的最佳时机Ⅲ)
13(188) 买卖股票的最佳时机Ⅳ(Hard)
买卖股票的最佳时机Ⅳ)
14(309) 最佳买卖股票时机含冷冻期(Medium)
最佳买卖股票时机含冷冻期)
15(343) 整数拆分(Medium)
整数拆分)
16(70) 爬楼梯
爬楼梯
17(714) 买卖股票的最佳时机含手续费(Medium)
买卖股票的最佳时机含手续费)
18(198) 打家劫舍
打家劫舍
19(213) 打家劫舍Ⅱ
打家劫舍Ⅱ)
20(169) 多数元素
多数元素
21(118) 杨辉三角
杨辉三角
22(119) 杨辉三角Ⅱ
杨辉三角Ⅱ
23(167) 两数之和Ⅱ-输入有序数组
两数之和Ⅱ-输入有序数组
24(11) 盛最多水的容器(Medium)
盛最多水的容器)
25(74) 搜索二维矩阵(Medium)
搜索二维矩阵)
26(240) 搜索二维矩阵Ⅱ(Medium)
搜索二维矩阵Ⅱ)
27(189) 旋转数组
旋转数组
28(217) 存在重复元素
存在重复元素
29(219) 存在重复元素Ⅱ
存在重复元素Ⅱ
30(268) 缺失数字
缺失数字
31(283) 移动零
移动零
32(414) 第三大的数
第三大的数
33(448) 找到所有数组中消失的数字
找到所有数组中消失的数字
34(42) 接雨水(Hard)
接雨水)
35(238) 除自身以外数组的乘积(Medium)
除自身以外数组的乘积)
36(485) 最大连续1的个数
最大连续1的个数
37(34) 在排序数组中查找元素的第一个和最后一个位置(Medium)
在排序数组中查找元素的第一个和最后一个位置)
38(278) 第一个错误的版本
第一个错误的版本
39(374) 猜数字大小
猜数字大小
40(375) 猜数字大小Ⅱ(Medium)
猜数字大小Ⅱ)
41(464) 我能赢吗(Medium)
我能赢吗
42(877) 石子游戏(Medium)
石子游戏)
43(1140) 石子游戏Ⅱ(Medium)
石子游戏Ⅱ)
44(1406) 石子游戏Ⅲ(Hard)
石子游戏Ⅲ)
45(1510) 石子游戏Ⅳ(Hard)
石子游戏Ⅳ)
46(1563) 石子游戏Ⅴ(Hard)
石子游戏Ⅴ)
47(674) 最长连续递增序列
最长连续递增序列
48(566) 重塑矩阵
重塑矩阵
49(867) 转置矩阵
转置矩阵
50(977) 有序数组的平方
有序数组的平方
51(46) 全排列(Medium)
全排列)
52(47) 全排列Ⅱ(Medium)
全排列Ⅱ)
53(54) 螺旋矩阵(Medium)
螺旋矩阵)
54(59) 螺旋矩阵Ⅱ(Medium)
螺旋矩阵Ⅱ)
55(766) 托普利茨矩阵
托普利茨矩阵
56(840) 矩阵中的幻方(Medium)
矩阵中的幻方)
57(64) 最小路径和(Medium)
最小路径和)
58(80) 删除排序数组中的重复项(Medium)
删除排序数组中的重复项)
59(120) 三角形最小路径和(Medium)
三角形最小路径和)
60(1207) 独一无二的出现次数
独一无二的出现次数
61(941) 有效的山脉数组
有效的山脉数组
62(33) 搜索旋转排序数组(Medium)
搜索旋转排序数组)
数据结构-字符串
1(13) 罗马数字转整数
罗马数字转整数
2(3) 无重复字符的最长子串
无重复字符的最长子串
3(20) 有效的括号
有效的括号
4(1447) 最简分数(Medium)
最简分数)
5(5) 最长回文子串(Medium)
最长回文子串
数据结构-链表
1(2) 两数相加(Medium)
两数相加)
2(21) 合并两个有序链表
合并两个有序链表
3(83) 删除排序链表中的重复元素
删除排序链表中的重复元素
4(206) 反转链表
反转链表
5(141) 环形链表
环形链表
6(19) 删除链表的倒数第N个节点(Medium)
删除链表的倒数第N个节点)
7(203) 移除链表元素
移除链表元素
8(237) 删除链表中的节点
删除链表中的节点
9(876) 链表的中间结点
链表的中间结点
10(234) 回文链表
回文链表
11(24) 两两交换链表中的节点(Medium)
两两交换链表中的节点)
12(61) 旋转链表(Medium)
旋转链表
13(82) 删除排序链表中的重复元素Ⅱ(Medium)
删除排序链表中的重复元素Ⅱ)
14(86) 分隔链表(Medium)
分隔链表)
15(92) 反转链表Ⅱ(Medium)
反转链表Ⅱ)
16(109) 有序链表转换二叉搜索树(Medium)
有序链表转换二叉搜索树)
17(143) 重排链表(Medium)
重排链表)
18(147) 对链表进行插入排序(Medium)
对链表进行插入排序)
19(148) 排序链表(Medium)
排序链表)
20(328) 奇偶链表(Medium)
奇偶链表)
21(445) 两数相加Ⅱ(Medium)
两数相加Ⅱ)
22(23) 合并K个排序链表(Hard)
合并K个排序链表)
23(25) K个一组翻转链表(Hard)
K个一组翻转链表)
24(142) 环形链表Ⅱ(Medium)
环形链表Ⅱ)
数据结构-树
1(100) 相同的树
相同的树
2(101) 对称二叉树
对称二叉树
3(104) 二叉树的最大深度
二叉树的最大深度
4(102) 二叉树的层次遍历(Medium)
二叉树的层次遍历)
5(107) 二叉树的层次遍历Ⅱ
二叉树的层次遍历Ⅱ
6(94) 二叉树的中序遍历(Medium)
二叉树的中序遍历)
7(108) 将有序数组转换为二叉搜索树
将有序数组转换为二叉搜索树
8(144) 二叉树的前序遍历(Medium)
二叉树的前序遍历)
9(145) 二叉树的后序遍历(Hard)
二叉树的后序遍历)
10(95) 不同的二叉搜索树Ⅱ(Medium)
不同的二叉搜索树Ⅱ)
11(96) 不同的二叉搜索树(Medium)
不同的二叉搜索树)
12(110) 平衡二叉树
平衡二叉树
13(111) 二叉树的最小深度
二叉树的最小深度
14(226) 翻转二叉树
翻转二叉树
15(112) 路径总和
路径总和
16(98) 验证二叉搜索树(Medium)
验证二叉搜索树)
17(105) 从前序与中序遍历序列构造二叉树(Medium)
从前序与中序遍历序列构造二叉树)
18(106) 从中序与后序遍历序列构造二叉树(Medium)
从中序与后序遍历序列构造二叉树)
19(701) 二叉搜索树中的插入操作(Medium)
二叉搜索树中的插入操作)
20(222) 完全二叉树的节点个数(Medium)
完全二叉树的节点个数)
21(114) 二叉树展开为链表(Medium)
二叉树展开为链表)
22(257) 二叉树的所有路径
二叉树的所有路径
23(297) 二叉树的序列化与反序列化(Hard)
二叉树的序列化与反序列化)
24(617) 合并二叉树
合并二叉树
25(129) 求根到叶子节点数字之和(Medium)
求根到叶子节点数字之和)
26(113) 路径总和Ⅱ(Medium)
路径总和Ⅱ)
27(103) 二叉树的锯齿形层次遍历(Medium)
二叉树的锯齿形层次遍历)
28(124) 二叉树中的最大路径和(Hard)
二叉树中的最大路径和)
29(404) 左叶子之和
左叶子之和
30(637) 二叉树的层平均值
二叉树的层平均值
31(235) 二叉搜索树的最近公共祖先
二叉搜索树的最近公共祖先
32(337) 打家劫舍Ⅲ(Medium)
打家劫舍Ⅲ)
33(687) 最长同值路径
最长同值路径
34(1448) 统计二叉树中好节点的数目(Meidum)
统计二叉树中好节点的数目)
35(538) 把二叉搜索树转换为累加树
把二叉搜索树转换为累加树
36(501) 二叉搜索树中的众数
二叉搜索树中的众数
37(968) 监控二叉树(Hard)
监控二叉树)
38(543) 二叉树的直径
二叉树的直径
39(437) 路径总和Ⅲ(Medium)
路径总和Ⅲ)
40(230) 二叉搜索树中第K小的元素(Medium)
二叉搜索树中第K小的元素)
41(530) 二叉搜索树的最小绝对差(Medium)
二叉搜索树的最小绝对差
42(116) 填充每个节点的下一个右侧节点指针(Medium)
填充每个节点的下一个右侧节点指针)
43(156) 上下翻转二叉树(Medium)
上下翻转二叉树(Medium)(PlusVip))
44(255) 验证前序遍历序列二叉搜索树(Medium)
验证前序遍历序列二叉搜索树(Medium)(PlusVip))
45(285) 二叉搜索树中的顺序后继(Medium)
二叉搜索树中的顺序后继(Medium)(PlusVip))
46(426) 将二叉搜索树转化为排序的双向链表(Medium)
将二叉搜索树转化为排序的双向链表(Medium)(PlusVip))
47(510) 二叉搜索树中的中序后继Ⅱ(Medium)
二叉搜索树中的中序后继Ⅱ(Medium)(PlusVip))
48(314) 二叉树的垂直遍历(Medium)
二叉树的垂直遍历(Medium)(PlusVip))
49(545) 二叉树的边界(Medium)
二叉树的边界(Medium)(PlusVip))
50(663) 均匀树划分(Medium)
均匀树划分(Medium)(PlusVip))
51(1660) 纠正二叉树(Medium)
纠正二叉树(Medium)(PlusVip))
数据结构-堆
1(23) 合并K个排序链表(Hard)
合并K个排序链表)
数据结构-哈希表
204 计数质数
计数质数
字符串
4(1447) 最简分数(Medium)
最简分数)
数据结构-线段树
1(307) 区域和检索 - 数组可修改
区域和检索 - 数组可修改
书籍-《程序员面试金典》(第六版)
1 面试题 08.03.魔术索引
魔术索引/%E9%9D%A2%E8%AF%95%E9%A2%98%2008.03.%E9%AD%94%E6%9C%AF%E7%B4%A2%E5%BC%95)