题目来源于LeetCode官网题库,解题思路参考官网各大佬,这里做一个目录方便大家查找,另外方便自己回顾知识点。
持续更新…
😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐 😐
题目目录
已解题目 | 基本思路 |
---|
Leetcode 1. 两数之和 | 枚举法 / 哈希表 |
Leetcode 3. 无重复字符的最长子串 | 滑动窗口 |
Leetcode 56. 合并区间 | sort排序 |
Leetcode 57. 插入区间 | 新建列表/原地删除 |
Leetcode 75. 颜色分类 | 单指针 / 01双指针 / 前后02双指针 |
Leetcode 94. 二叉树的中序遍历 | DFS遍历 / 栈&迭代 / 莫里斯遍历 |
Leetcode 148. 排序链表 | 归并排序 (递归法)/ (非递归,从底至顶) |
Leetcode 179. 最大数 | 贪心算法+sorted |
Leetcode 220. 存在重复元素 III | 桶排序的思想 |
Leetcode 600. 不含连续1的非负整数 | 动态规划+满二叉树 |
Leetcode 1057. 校园自行车分配(滴滴算法岗笔试题) | tim排序+桶排序+优先队列 |
Leetcode 1877. 数组中最大数对和的最小值 | 排序 + 贪心 |
1.排序算法
- 冒泡排序:让大的值到最右边。一次比较两个元素,如果它们的顺序错误就把它们交换过来
- 选择排序:从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾
- 插入排序:从左到右遍历,将新元素插入到左边已排序集合里面
- 希尔排序:分组插入排序
- 归并排序:无限分组再一 一合并
- 快速排序:挑出一个元素,称为 “基准”,分区操作
- 堆排序: 建立二叉树,从下置上,与左右子树对比,如果有比夫结点大的,就替换
- 计数排序:统计数组中每个值为i的元素出现的次数,存入数组
- 桶排序:(最大值-最小值)/个数=每个桶的范围,分别排序
详细的参考:十大经典排序算法最强总结(含JAVA代码实现)
排序算法 | 基本思路 |
---|
Leetcode 56. 合并区间 | sort排序 |
Leetcode 57. 插入区间 | 新建列表/原地删除 |
Leetcode 75. 颜色分类 | 单指针 / 01双指针 / 前后02双指针 |
Leetcode 148. 排序链表 | 归并排序 (递归法)/ (非递归,从底至顶) |
Leetcode 179. 最大数 | 贪心算法+sorted |
Leetcode 220. 存在重复元素 III | 桶排序的思想 |
Leetcode 1057. 校园自行车分配(滴滴算法岗笔试题) | tim排序+桶排序+优先队列 |
Leetcode 1877. 数组中最大数对和的最小值 | 排序 + 贪心 |
2.哈希表
哈希表 | 基本思路 |
---|
Leetcode 12. 整数转罗马数字 | 哈希 |
3.动态规划
动态规划 | 基本思路 |
---|
Leetcode 600. 不含连续1的非负整数 | 动态规划+满二叉树 |
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)