leetcode常见算法与数据结构汇总

leetcode刷题之后,很多问题老是记忆不深刻,因此特意开此帖:

一、对做过题目的总结;

二、对一些方法精妙未能领会透彻的代码汇总,进行时常学习;

三、总结面试笔试常见题目,并讨论最优解法及各种解法的优劣;

 

leetcode探索中级算法

 

1)排序相关
 
快排,归并,堆排,插入,选择
 
1.1)基础算法原理与实现:
 
十大排序算法:C++
 
1.2) 直接使用排序算法的题目:

leetcode 628. 三个数的最大乘积

1.3)通过归并排序求逆序数:

微软面试题:求一个序列的逆序对数(hard)

1.4) 堆排序问题(包括topk):

leetcode 215 第K个最大的元素 (medium)

leetcode 239 滑动窗口的最大值 (hard)

1.5) 大数据问题:

头条面试:针对海量且时时更新的点击数据

教你如何解决海量数据问题

十道海量数据题目

3)贪心算法
 
入门级问题:货币选择问题、区间调度问题、字典序最小问题 (easy);
 
3.1)简单的贪心算法问题:

leetcode 55 跳跃游戏(easy)

leetcode 860. 柠檬水找零(easy)

3.2)旷视科技面试题(与区间调度问题相似):

leetcode 452 用少量的箭射爆气球(medium)

 3.3)股票买卖系列问题:

leetcode 121 买卖股票的最佳时机I (easy)

leetcode 122 买卖股票的最佳时机II (easy) 

3.4)其他问题:

leetcode 134加油站

leetcode 135 分发糖果 (hard)

4)动态规划
 

4.1)简单动态规划题目

leetcode 70 爬楼梯(easy)

leetcode 509 斐波那契数列(easy)

4.2)中等动态规划题目

leetcode 3 无重复字符的最长子串(medium)

leetcode 91 解码方法(medium) 

leetcode 322. 零钱兑换(medium)

4.3)较难动态规划题目

leetcode 10. 正则表达式匹配(hard)

leetcode 72. 编辑距离(hard)

 4.4)求路径问题

leetcode 64. 最小路径和(medium)

leetcode -1 count the path(medium)

leetcode 120. 三角形最小路径和(medium)

leetcode 62. 不同路径(medium)

leetcode 63 不同路径II(medium)

4.5)股票买卖问题

leetcode 123. 买卖股票的最佳时机 III (hard)

leetcode 188. 买卖股票的最佳时机 IV(hard)

leecode 309. 最佳买卖股票时机含冷冻期(hard)

leetcode 714. 买卖股票的最佳时机含手续费(hard)

4.6)最长最大子序列子串类问题

leetcode 53. 最大子序和(easy)

leetcode 300. 最长上升子序列(medium)

leetcode 152. 乘积最大子序列(medium)

leetcode 115不同的子序列(hard)

4.7)单词拆分

leetcode 139 单词拆分(medium)

leetcode 140 单词拆分2(hard)

5)二叉树相关
 
5.1递归,层序迭代,中序迭代,后序迭代
5.2二叉查找树的题目
 
6)普通的数组字符串问题
 
7)全排列
全排列的递归法,八皇后,next_permutation,
 
8)图搜索问题
DFS,BFS, Djistra
最小生成树,最短路径
数独
8.1)并查集:

leetcode 547朋友圈

leetcode 200岛屿的个数

9)双指针法、哈希表法
 
9.1)哈希表:

leetcode 1两数之和(easy)

leetcode 49. 字母异位词分组(medium)

leetcode 128最长连续序列(hard)

9.2)双指针:

leetcode 15 三数之和

10)trie树

leetcode 212 单词搜索II

11)LRUCache

leetcode 146LRU cache

12)Bloom过滤器
 
13)链表字符串

leetcode 2 两数相加

 

转载于:https://www.cnblogs.com/joelwang/p/10640599.html

你可能感兴趣的:(leetcode常见算法与数据结构汇总)