Leetcode Java版、C语言版 学习记录汇总

算法练习与数据结构 专栏收录该内容
7 篇文章 0 订阅

所有题目源代码地址:

算法思想

序号名称
1KMP浅谈
面试题记录汇总
序号题目算法思想
29顺时针打印矩阵快排、数组、Java
54二叉搜索树的第k大节点二叉搜索树、Java
08.01三步问题数组、动态规划、C++
17.10主要元素数组、C++
17.16按摩师数组、动态规划、C++
剑指offer 14剪绳子 II贪心、递归、C++
剑指offer 42/16.17. 连续数列连续子数组的最大和数组、动态规划、C++
剑指offer 63股票的最大利润数组、动态规划、C++

Leetcode Java版学习记录汇总

  • 便于查询
Java版题目列表:
题号题目思想或类型
1两数之和暴力破解
2 两数相加单项链表
3 无重复字符的最长子串HashMap
4 寻找两个有序数组的中位数数组、双指针
5 最长回文子串 数组、双指针
6 Z 字形变换数组
7 整数翻转
8 字符串转换整数 (atoi)字符串
9回文数
10正则表达式匹配递归
11盛最多水的容器数组、双指针
12整数转罗马数字HashMap
13罗马数字转整数HashMap
14最长公共前缀暴力破解
15三数之和数组、三指针
16最接近的三数之和数组、三指针
17电话号码的字母组合暴力破解
18四数之和数组、四指针
19删除链表的倒数第N个节点链表
20有效的括号
21合并两个有序链表链表
22括号生成DFS
23合并K个排序链表分治思想
24两两交换链表中的节点链表
25 K 个一组翻转链表链表
26删除排序数组中的重复项暴力破解
27移除元素暴力破解
28实现 strStr()字符串
29两数相除二分查找、位运算
30串联所有单词的子串暴力破解
31下一个排列数组、二分查找、快排
32最长有效括号
33搜索旋转排序数组二分法
34在排序数组中查找元素的第一个和最后一个位置二分法
35搜索插入位置二分
36有效的数独暴力破解
37解数独回溯
38外观数列递归、StringBuilder
39组合总和递归、DFS、ArrayDeque
40组合总和II递归、DFS、ArrayDeque
41缺失的第一个正数快排、数组
42接雨水动态规划、双指针
43字符串相乘字符数组
44通配符匹配动态规划
45跳跃游戏 II贪心算法
46 全排列DFS
47 全排列IIDFS+剪枝
48 旋转图像数组
49字母异位词分组HashMap
50 Pow(x, n)递归
51 N皇后回溯
52 N皇后II回溯
53有效的数独最大子序和贪心算法、动态规划
54螺旋矩阵数组
55跳跃游戏暴力破解
56合并区间lamda表达式、二维数组排序
57插入区间数组
58最后一个单词的长度数组
59螺旋矩阵II数组
60第k个排列StringBuilder、递归
61旋转链表链表
62不同路径排列组合、动态规划
63不同路径 II动态规划
64最短路径动态规划
65有效数字有限自动机DFS
66加一数组
67二进制求和char运算(ASCII?)
68文本左右对齐字符串数组
69x 的平方根快排
70爬楼梯动态规划
71 简化路径
72编辑距离动态规划、字符串
73 矩阵置零数组
74 搜索二维矩阵数组、二分法
75颜色分类数组、三指针、快排
76最小覆盖子串数组、双指针、滑动窗口
77组合递归
78子集回溯
79单词搜索回溯
80删除排序数组中的重复项 II数组、双指针
81搜索旋转排序数组 II数组、二分法
82删除排序链表中的重复元素II单链表
83删除排序链表中的重复元素单链表
86分隔链表单链表
88分隔链表数组
90子集 II回溯+去重
91解码方法动态规划
92反转链表 II单链表
93复原IP地址回溯
94二叉树的中序遍历递归、迭代、栈
98验证二叉搜索树递归、树
101对称二叉树回溯+二叉树
102二叉树的层序遍历队列+二叉树
103二叉树的锯齿形层次遍历队列+二叉树
107二叉树的层序遍历II队列+二叉树
108将有序数组转换为二叉搜索树二分+前序遍历+二叉树
110平衡二叉树高度遍历+二叉树、递归
111 二叉树的最小深度遍历二叉树、递归
112 路径总和二叉树、递归
113 路径总和II二叉树、递归
118杨辉三角数组
119杨辉三角 II数组
121买卖股票的最佳时机贪心算法、动态规划
122买卖股票的最佳时机 II贪心算法、动态规划
125验证回文串数组
129求根到叶子节点数字之和前序遍历
136只出现一次的数字异或
144二叉树的前序遍历递归、迭代、栈
145二叉树的后序遍历递归、迭代、栈
146LRU缓存机制LinkedHashMap、LRU
151逆波兰表达式求值
188*买卖股票的最佳时机 IV三维动态规划
209长度最小的子数组数组、双指针、滑动窗口
212*单词搜索II回溯、前缀树
2312的幂数学公式log
240 搜索二维矩阵II数组、二分法
242有效的字母异位词字符数组
263丑数暴力破解
264丑数 II动态规划
278第一个错误的版本二分查找
3263的幂数学公式log
328奇偶链表数学公式log
3424的幂数学公式log
438找到字符串中所有字母异位词滑动窗口
567字符串的排列滑动窗口
611 有效三角形的个数三指针
637 二叉树的层平均值二叉树、队列
643 子数组最大平均数 I滑动窗口
725 分隔链表单链表
832翻转图像数组
1014最佳观光组合数组
1028从先序遍历还原二叉树二叉树、先序遍历
1200最小绝对差快排、数组
1417重新格式化字符串数组

Leetcode C/C++版学习记录汇总

  • 数据结构复习顺便做的练习
C/C++版题目列表:
序号题目算法思想
2两数相加链表,C++
3无重复字符的最长子串数组,双指针,C++
11盛最多水的容器数组,双指针,C++
14最长公共前缀数组,C++
17电话号码的字母组合数组,递归,C++
19删除链表的倒数第N个节点(2009-408)链表、双指针、C++
20有效的括号栈,C++
21合并两个有序链表单链表
24两两交换链表中的节点单链表、C++
26 删除排序数组中的重复项双指针,C++
28 实现 strStr()【KMP版】KMP,C++
42 接雨水双指针,C++
53最大子序和:C版/ C++版贪心算法,C++
55跳跃游戏贪心算法
82删除排序链表中的重复元素II单链表
83删除排序链表中的重复元素单链表
84柱状图中最大的矩形单调栈、数组、C++
86分隔链表单链表
88合并两个有序数组数组,C++
94二叉树的中序遍历二叉树、递归
96不同的二叉搜索树公式、C++
97交错字符串DP、C++
101对称二叉树二叉树、递归
102二叉树的层序遍历二叉树、队列
104二叉树的最大深度二叉树、C++
105从前序与中序遍历序列构造二叉树二叉树、C++
106从中序与后序遍历序列构造二叉树二叉树、C++
107二叉树的层序遍历II二叉树、队列
109有序链表转换二叉搜索树二叉树、队列、C++
110平衡二叉树二叉树、C++
113路径总和 II二叉树、栈
115不同的子序列动态规划、字符串、C++
120三角形最小路径和动态规划、数组、C++
121买卖股票的最佳时机数组、贪心、动态规划、C++
122买卖股票的最佳时机II数组、贪心、动态规划、C++
131分割回文串数组、回溯剪枝、C++
134加油站数组、贪心、图解、C++
136 只出现一次的数字位运算、C++
141环形链表快慢指针
143重排链表快慢指针、链表反序、链表插入
144二叉树的前序遍历二叉树、递归
145二叉树的后序遍历二叉树、递归
147对链表进行插入排序链表、C++
150逆波兰表达式求值
151翻转字符串里的单词原地反转、字符串、C++
155最小栈
160相交链表(2012-408)链表、C++
167两数之和 II - 输入有序数组双指针、C++
169多数元素(2013-408)数组、Map、C++
189旋转数组数组、C++
198打家劫舍动态规划、C++
201数字范围按位与位运算、C++
203移除链表元素(2015-408)链表、C++
206反转链表链表、C++
207课程表有向无环图、广度优先、拓扑算法、C++
213打家劫舍 II动态规划、C++
228汇总区间数组、C++
235二叉搜索树的最近公共祖先递归、C++
237删除链表中的节点递归、C++
242有效的字母异位词数组、C++
257二叉树的所有路径二叉树、C++
258各位相加数学证明、C++
268丢失的数字数组、C++
279完全平方数数组、动态规划、C++
283移动零数组、C++
300最长递增子序列数组、动态规划、C++
303区域和检索 - 数组不可变数组、动态规划、C++
304二维区域和检索 - 矩阵不可变数组、动态规划、C++
316去除重复字母数组、单调栈、C++
328奇偶链表单链表
343整数拆分数组、动态规划、C++
357计算各个位数不同的数字个数数组、动态规划、排列组合、C++
392判断子序列数组、C++
404左叶子之和数组、C++
405数字转换为十六进制数数组、C++
416分割等和子集数组、动态规划、背包问题、C++
437路径总和 IIIDFS、C++
442数组中重复的数据数组、C++
448找到所有数组中消失的数字数组、C++
452用最少数量的箭引爆气球数组、贪心、C++
455分发饼干数组、贪心、C++
467环绕字符串中唯一的子字符串数组、动态规划、C++
468验证IP地址字符串、C++
474一和零数组、多维动态规划、C++
494目标和数组、动态规划、分支回溯、C++
496下一个更大元素 I数组、单调栈、C++
503下一个更大元素 II数组、单调栈、C++
530二叉搜索树的最小绝对差二叉搜索树、C++
538把二叉搜索树转换为累加树二叉搜索树、反中序遍历、C++
543二叉树的直径二叉树遍历、深度、C++
561数组拆分 I快排、C++
572另一个树的子树I二叉树遍历、C++
581最短无序连续子数组数组、C++
589N叉树的前序遍历N叉树遍历、C++
590N叉树的后序遍历N叉树遍历、C++
605种花问题数组、贪心算法、C++
628三个数的最大乘积数组遍历、贪心、C++
650只有两个键的键盘数组遍历、动态规划、C++
665非递减数列数组遍历、C++
674最长连续递增序列数组遍历、C++
687最长同值路径二叉树遍历、C++
704二分查找二分、C++
709转换成小写字母C++
714买卖股票的最佳时机含手续费数组、动态规划、C++
725分隔链表单链表
738单调递增的数字数组、C++
739每日温度数组、单调栈、C++
746动态规划数组、动态规划、C++
747至少是其他数字两倍的最大数数组、双指针、C++
783二叉搜索树的最小绝对差二叉搜索树、C++
821字符的最短距离数组、C++
837新21点数组、动态规划、C++
852山脉数组的峰顶索引数组、C++
867转置矩阵矩阵、C++
897递增顺序查找树中序遍历、C++
905按奇偶排序数组双指针、C++
935骑士拨号器动态规划、C++
977有序数组的平方双指针、C++
978最长湍流子数组数组、动态规划、C++
985查询后的偶数和分类讨论、C++
993二叉树的堂兄弟节点分类讨论、C++
1005K 次取反后最大化的数组和数组、C++
1019链表中的下一个更大节点单链表、单调栈、C++
1025除数博弈数组、动态规划、C++
1038把二叉搜索树转换为累加树二叉搜索树、反中序遍历、C++
1049最后一块石头的重量 II数组、动态规划、背包问题、C++
1051高度检查器sort、C++
1081不同字符的最小子序列数组、单调栈、C++
1105填充书架数组、动态规划、C++
1191K 次串联后最大子数组之和数组、动态规划、C++
1232缀点成线数组、一阶函数、C++
1262可被三整除的最大和数组、动态规划、C++
1315矩阵区域和数组、动态规划、C++
1367二叉树中的列表树、链表、动态规划、C++
1477找两个和为目标值且不重叠的子数组数组、动态规划、双滑动窗口、C++
1535找出数组游戏的赢家数组、C++
1552两球之间的磁力数组、二分法、C++
1558所有奇数长度子数组的和数组、C++
1578避免重复字母的最小删除成本数组、贪心、C++
1641统计字典序元音字符串的数目动态规划、插板问题、C++
1664生成平衡数组的方案数动态规划、C++
1706球会落何处动态规划、类似走迷宫、C++
C/C++版数据结构:
序号名字
1C语言实现:优(欠)美(揍)的双向顺序栈
  • 4
    点赞
  • 2
    评论
  • 10
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

评论2
请先登录 后发表评论~
©️2021 CSDN 皮肤主题: 博客之星2020 设计师:CY__ 返回首页

打赏作者

椰子奶糖

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值