LeetCode总结【转】
转自:http://blog.csdn.net/lanxu_yy/article/details/17848219
版权声明:本文为博主原创文章,未经博主允许不得转载。
最近完成了www.leetcode.com的online judge中151道算法题目。除各个题目有特殊巧妙的解法以外,大部分题目都是经典的算法或者数据结构,因此做了如下小结,具体的解题思路可以搜索我的博客:LeetCode题解
题目 | 算法 | 数据结构 | 注意事项 |
Clone Graph | BFS | 哈希表 | |
Word Ladder II | BFS | 哈希表 | |
Surrounded Regions | BFS | 矩阵 | |
Word Ladder | BFS | N/A | |
Binary Tree Level Order Traversal | BFS|前序遍历 | 队列 | |
Binary Tree Level Order Traversal II | BFS|前序遍历 | 队列 | |
Binary Tree Zigzag Level Order Traversal | BFS|前序遍历 | 队列 | 每一层顺序分别对待 |
Implement strStr() | KMP算法 | N/A | |
Copy List with Random Pointer | N/A | 哈希表 | |
Remove Duplicates from Sorted Array | N/A | 哈希表 | |
Remove Duplicates from Sorted Array II | N/A | 哈希表 | |
Set Matrix Zeroes | N/A | 哈希表 | |
Anagrams | N/A | 哈希表 | |
First Missing Positive | N/A | 哈希表 | |
Two Sum | N/A | 哈希表 | |
Evaluate Reverse Polish Notation | N/A | 堆栈 | |
Largest Rectangle in Histogram | N/A | 堆栈 | 记录重要位置 |
Minimum Window Substring | N/A | 堆栈 | |
Simplify Path | N/A | 堆栈 | |
Longest Valid Parentheses | N/A | 堆栈 | |
Valid Parentheses | N/A | 堆栈 | 词法分析 |
Container With Most Water | N/A | 堆栈 | 记录重要位置 |
Reverse Words in a String | N/A | 堆栈 | 翻转字符串 |
Best Time to Buy and Sell Stock | N/A | 数组 | |
Best Time to Buy and Sell Stock II | N/A | 数组 | |
Best Time to Buy and Sell Stock III | N/A | 数组 | |
Length of Last Word | N/A | 数组 | |
Search Insert Position | N/A | 数组 | |
Search for a Range | N/A | 数组 | |
Spiral Matrix | N/A | 矩阵 | 简化为子问题 |
Spiral Matrix II | N/A | 矩阵 | 简化为子问题 |
LRU Cache | N/A | 链表 | |
Reorder List | N/A | 链表 | 快慢指针&链表倒序 |
Linked List Cycle | N/A | 链表 | 快慢指针 |
Linked List Cycle II | N/A | 链表 | 快慢指针 |
Reverse Linked List II | N/A | 链表 | |
Partition List | N/A | 链表 | |
Remove Duplicates from Sorted List | N/A | 链表 | |
Remove Duplicates from Sorted List II | N/A | 链表 | |
Merge Two Sorted Lists | N/A | 链表 | |
Rotate List | N/A | 链表 | 快慢指针 |
Reverse Nodes in k-Group | N/A | 链表 | |
Swap Nodes in Pairs | N/A | 链表 | |
Remove Nth Node From End of List | N/A | 链表 | 快慢指针 |
Text Justification | N/A | 队列 | |
Candy | N/A | N/A | 简化为子问题 |
Valid Palindrome | N/A | N/A | 首尾指针 |
Plus One | N/A | N/A | 模拟加法运算 |
Valid Number | N/A | N/A | 词法分析 |
Add Binary | N/A | N/A | 模拟加法运算 |
Insert Interval | N/A | N/A | |
Merge Intervals | N/A | N/A | |
Multiply Strings | N/A | N/A | 模拟乘法运算 |
Trapping Rain Water | N/A | N/A | |
Valid Sudoku | N/A | N/A | |
Roman to Integer | N/A | N/A | |
Integer to Roman | N/A | N/A | |
Palindrome Number | N/A | N/A | |
Reverse Integer | N/A | N/A | |
ZigZag Conversion | N/A | N/A | |
Add Two Numbers | N/A | N/A | 模拟加法运算 |
Median of Two Sorted Arrays | N/A | N/A | |
String to Integer (atoi) | STL函数 | N/A | |
Next Permutation | STL经典算法 | N/A | |
Recover Binary Search Tree | 中序遍历 | 二叉树 | |
3Sum | 二分查找 | N/A | |
3Sum Closest | 二分查找 | N/A | |
4Sum | 二分查找 | N/A | |
Single Number | 位运算 | N/A | |
Single Number II | 位运算 | N/A | |
Construct Binary Tree from Preorder and Inorder Traversal | 前序中序遍历 | N/A | |
Binary Tree Preorder Traversal | 前序遍历 | 二叉树 | |
Flatten Binary Tree to Linked List | 前序遍历 | 二叉树 | |
Interleaving String | 动态规划 | 二叉树 | |
Unique Binary Search Trees | 动态规划 | 二叉树 | |
Word Break | 动态规划 | N/A | |
Word Break II | 动态规划 | N/A | |
Palindrome Partitioning | 动态规划 | N/A | |
Palindrome Partitioning II | 动态规划 | N/A | |
Triangle | 动态规划 | N/A | |
Distinct Subsequences | 动态规划 | N/A | |
Decode Ways | 动态规划 | N/A | |
Scramble String | 动态规划 | N/A | |
Maximal Rectangle | 动态规划 | N/A | |
Edit Distance | 动态规划 | N/A | |
Climbing Stairs | 动态规划 | N/A | |
Minimum Path Sum | 动态规划 | N/A | |
Unique Paths | 动态规划 | N/A | |
Unique Paths II | 动态规划 | N/A | |
Jump Game | 动态规划 | N/A | |
Jump Game II | 动态规划 | N/A | |
Maximum Subarray | 动态规划 | N/A | |
Wildcard Matching | 动态规划 | N/A | |
Substring with Concatenation of All Words | 动态规划 | N/A | |
Sort List | 合并排序 | 链表 | 快慢指针 |
Merge Sorted Array | 合并排序 | N/A | |
Construct Binary Tree from Inorder and Postorder Traversal | 后序中序遍历 | N/A | |
Binary Tree Postorder Traversal | 后续遍历 | 二叉树 | |
Combinations | 回溯 | N/A | |
Permutation Sequence | 回溯 | N/A | |
N-Queens | 回溯 | N/A | |
N-Queens II | 回溯 | N/A | |
Permutations | 回溯 | N/A | |
Permutations II | 回溯 | N/A | |
Combination Sum | 回溯 | N/A | |
Combination Sum II | 回溯 | N/A | |
Sudoku Solver | 回溯 | N/A | |
Longest Substring Without Repeating Characters | 回溯 | N/A | |
Max Points on a Line | 循环遍历 | N/A | 排除相同的点 |
Longest Common Prefix | 循环遍历 | N/A | |
Longest Palindromic Substring | 循环遍历 | N/A | |
Insertion Sort List | 插入排序 | 链表 | |
Rotate Image | 矢量旋转与平移 | N/A | |
Longest Consecutive Sequence | 类BFS | 哈希表 | |
Search in Rotated Sorted Array | 类二分查找 | N/A | |
Search in Rotated Sorted Array II | 类二分查找 | N/A | 特殊考虑相等数据 |
Sqrt(x) | 类二分查找 | N/A | |
Pow(x, n) | 类二进制 | N/A | |
Divide Two Integers | 类二进制 | N/A | |
Gas Station | 类合并排序 | N/A | |
Merge k Sorted Lists | 类外排序 | N/A | |
Sort Colors | 类快速排序 | N/A | |
Remove Element | 类快速排序 | N/A | |
Search a 2D Matrix | 类杨氏矩阵 | N/A | |
Restore IP Addresses | 背包问题 | N/A | |
Sum Root to Leaf Numbers | 递归 | 二叉树 | |
Binary Tree Maximum Path Sum | 递归 | 二叉树 | |
opulating Next Right Pointers in Each Node | 递归 | 二叉树 | |
Populating Next Right Pointers in Each Node II | 递归 | 二叉树 | |
Path Sum | 递归 | 二叉树 | |
Path Sum II | 递归 | 二叉树 | |
Maximum Depth of Binary Tree | 递归 | 二叉树 | |
Minimum Depth of Binary Tree | 递归 | 二叉树 | |
Balanced Binary Tree | 递归 | 二叉树 | |
Symmetric Tree | 递归 | 二叉树 | |
Same Tree | 递归 | 二叉树 | |
Validate Binary Search Tree | 递归 | 二叉树 | |
Unique Binary Search Trees II | 递归 | 二叉树 | |
Binary Tree Inorder Traversal | 递归 | 二叉树 | |
Pascal's Triangle | 递归 | N/A | |
Pascal's Triangle II | 递归 | N/A | |
Convert Sorted List to Binary Search Tree | 递归 | N/A | 快慢指针&反中序遍历 |
Convert Sorted Array to Binary Search Tree | 递归 | N/A | 反中序遍历 |
Subsets | 递归 | N/A | |
Subsets II | 递归 | N/A | |
Gray Code | 递归 | N/A | |
Word Search | 递归 | N/A | |
Count and Say | 递归 | N/A | |
Generate Parentheses | 递归 | N/A | |
Letter Combinations of a Phone Number | 递归 | N/A | |
Regular Expression Matching | 递归 | N/A |
LeetCode总结【转】的更多相关文章
- 我为什么要写LeetCode的博客?
# 增强学习成果 有一个研究成果,在学习中传授他人知识和讨论是最高效的做法,而看书则是最低效的做法(具体研究成果没找到地址).我写LeetCode博客主要目的是增强学习成果.当然,我也想出名,然而不知 ...
- LeetCode All in One 题目讲解汇总(持续更新中...)
终于将LeetCode的免费题刷完了,真是漫长的第一遍啊,估计很多题都忘的差不多了,这次开个题目汇总贴,并附上每道题目的解题连接,方便之后查阅吧~ 477 Total Hamming Distance ...
- [LeetCode] Longest Substring with At Least K Repeating Characters 至少有K个重复字符的最长子字符串
Find the length of the longest substring T of a given string (consists of lowercase letters only) su ...
- Leetcode 笔记 113 - Path Sum II
题目链接:Path Sum II | LeetCode OJ Given a binary tree and a sum, find all root-to-leaf paths where each ...
- Leetcode 笔记 112 - Path Sum
题目链接:Path Sum | LeetCode OJ Given a binary tree and a sum, determine if the tree has a root-to-leaf ...
- Leetcode 笔记 110 - Balanced Binary Tree
题目链接:Balanced Binary Tree | LeetCode OJ Given a binary tree, determine if it is height-balanced. For ...
- Leetcode 笔记 100 - Same Tree
题目链接:Same Tree | LeetCode OJ Given two binary trees, write a function to check if they are equal or ...
- Leetcode 笔记 99 - Recover Binary Search Tree
题目链接:Recover Binary Search Tree | LeetCode OJ Two elements of a binary search tree (BST) are swapped ...
- Leetcode 笔记 98 - Validate Binary Search Tree
题目链接:Validate Binary Search Tree | LeetCode OJ Given a binary tree, determine if it is a valid binar ...
- Leetcode 笔记 101 - Symmetric Tree
题目链接:Symmetric Tree | LeetCode OJ Given a binary tree, check whether it is a mirror of itself (ie, s ...
随机推荐
- C++构造函数实例——拷贝构造,赋值
#define _CRT_SECURE_NO_WARNINGS //windows系统 #include <iostream> #include <cstdlib> #incl ...
- python数据排序
1.原地排序 data.sort() #对原列表进行排序 2.复制排序 data2 = sorted(data) #原列表不变,作为参数传给sorted()方法进行排序
- session为什么需要持久化
为什么需要持久化: 客户端访问了某个能开启会话功能的资源, web服务器就会创建一个与该客户端对应的HttpSession对象,每个HttpSession对象都要站用一定的内存空间.如果在某一时间段内 ...
- 【Interleaving String】cpp
题目: Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. For example,Given: ...
- 【Jump Game II 】cpp
题目: Given an array of non-negative integers, you are initially positioned at the first index of the ...
- Python学习-day12 Mysql
MYSQ数据库的安装使用 Linux/UNIX上安装Mysql Linux平台上推荐使用RPM包来安装Mysql,MySQL AB提供了以下RPM包的下载地址: MySQL - MySQL服务器.你需 ...
- php获取客户端mac地址
exec('/sbin/arp -a 2>&1', $array, $return_val);dump($array);$mac = '';foreach($array as $valu ...
- 多IP指定出口IP地址 如何指定云服务器源IP?
如果一个主机绑定有多个IP地址,那么在被动响应和主动发起连接两种方式中,源IP地址的选择机制肯定是有所差异的.主机在接收外部数据包,并发送响应数据包时,响应源地址显然就是客户端请求的地址,这是非常容易 ...
- linux下telnet安装与使用
现在管理linux基本都用crt.xshell或者putty,已经没什么人用telnet,因为后续需要讲zabbix免客户端监控只telnet,通过telnet来监控服务器性能. yum安装telne ...
- Hadoop入门第四篇:手动搭建自己的hadoop小集群
前言 好几天没有更新了,本来是应该先写HDFS的相关内容,但是考虑到HDFS是我们后面所有学习的基础,而我只是简单的了解了一下而已,后面准备好好整理HDFS再写这块.所以大家在阅读这篇文章之前,请先了 ...