leetcode问题分析:总述

159 篇文章 0 订阅

前言:

  最近在学着做leetcode上面所有的习题。这里列举出了很多公司面试的问题,撇开功利的目的,对这些问题的研究对于学习总结也有很重要的意义。于是想尝试一下把自己解决问题的思路以及详细的解答都记录下来。在以前的学习中,经常碰到一些比较困难的问题去搜索答案的时候,看到的只是贴的一大堆代码。也许结果是对的,可是没有描述为什么会有这样的结果,这个结果是怎么来的。于是如果问题有一些变化,还是不知道该怎么做。所以问题的核心还是在于它的本质以及背后的思想。

  本文是所有问题以及其解答的一个索引。引用一下本人微博上的一句话:只贴代码不讲思路的其行为比看帖不回帖更可恶 :)

 

问题列表

问题解答分析
Two Sum 分析解答
Median of Two Sorted Arrays 分析解答
Longest Substring Without Repeating Characters 分析解答
Add Two Numbers 分析解答
Longest Palindromic Substring 分析解答
ZigZag Conversion 分析解答
Reverse Integer 分析解答
String to Integer (atoi) 分析解答
Palindrome Number 分析解答
Regular Expression Matching 分析解答
Container With Most Water 分析解答
Integer to Roman 分析解答
Roman to Integer 分析解答
Longest Common Prefix 分析解答
3Sum 分析解答
3Sum Closest 分析解答
4Sum 分析解答
Letter Combinations of a Phone Number 分析解答
Remove Nth Node From End of List 分析解答
Valid Parentheses 分析解答
Generate Parentheses 分析解答
Merge k Sorted Lists 分析解答
Swap Nodes in Pairs 分析解答
Reverse Nodes in k-Group 分析解答
Remove Duplicates from Sorted Array 分析解答
Remove Element 分析解答
Implement strStr() 分析解答
Divide Two Integers 分析解答
Substring with Concatenation of All Words 分析解答
Next Permutation 分析解答
Longest Valid Parentheses 分析解答
Search in Rotated Sorted Array 分析解答
Search for a Range 分析解答
Search Insert Position 分析解答
Valid Sudoku 分析解答
Sudoku Solver 分析解答
Count and Say 分析解答
Combination Sum 分析解答
Combination Sum II 分析解答
First Missing Positive 分析解答
Trapping Rain Water 分析解答
Multiply Strings 分析解答
Wildcard Matching 分析解答
Jump Game II 分析解答
Permutations 分析解答
Permutations II 分析解答
Rotate Image 分析解答
Group Anagrams 分析解答
Pow(x, n) 分析解答
N-Queens 分析解答
N-Queens II 分析解答
Maximum Subarray 分析解答
Spiral Matrix 分析解答
Jump Game 分析解答
Merge Intervals 分析解答
Insert Interval 分析解答
Length of Last Word 分析解答
Spiral Matrix II 分析解答
Permutation Sequence 分析解答
Rotate List 分析解答
Unique Paths 分析解答
Unique Paths II 分析解答
Minimum Path Sum 分析解答
Merge Two Sorted Lists 分析解答
Add Binary 分析解答
Valid Number 分析解答
Plus One 分析解答
Text Justification 分析解答
Sqrt(x) 分析解答
Climbing Stairs 分析解答
Simplify Path 分析解答
Edit Distance 分析解答
Set Matrix Zeroes 分析解答
Search a 2D Matrix 分析解答
Sort Colors 分析解答
Minimum Window Substring 分析解答
Combinations 分析解答
Subsets 分析解答
Word Search 分析解答
Remove Duplicates from Sorted Array II 分析解答
Search in Rotated Sorted Array II 分析解答
Remove Duplicates from Sorted List 分析解答
Remove Duplicates from Sorted List II 分析解答
Largest Rectangle in Histogram 分析解答
Maximal Rectangle 分析解答
Partition List 分析解答
Scramble String 分析解答 
Merge Sorted Array 分析解答
Gray Code 分析解答
Decode Ways 分析解答
Subsets II 分析解答
Reverse Linked List II 分析解答
Restore IP Addresses 分析解答
Binary Tree Inorder Traversal 分析解答
Unique Binary Search Trees 分析解答
Unique Binary Search Trees II 分析解答
Interleaving String 分析解答
Validate Binary Search Tree 分析解答
Recover Binary Search Tree 分析解答
Same Tree 分析解答
Symmetric Tree 分析解答
Binary Tree Level Order Traversal 分析解答
Binary Tree Zigzag Level Order Traversal 分析解答
Maximum Depth of Binary Tree 分析解答
Construct Binary Tree from Preorder and Inorder Traversal 分析解答
Construct Binary Tree from Inorder and Postorder Traversal 分析解答
Binary Tree Level Order Traversal II 分析解答
Convert Sorted Array to Binary Search Tree 分析解答
Convert Sorted List to Binary Search Tree 分析解答
Balanced Binary Tree 分析解答
Minimum Depth of Binary Tree 分析解答
Path Sum 分析解答
Path Sum II 分析解答
Flatten Binary Tree to Linked List 分析解答
Distinct Subsequences 分析解答
Populating Next Right Pointers in Each Node 分析解答
Populating Next Right Pointers in Each Node II 分析解答
Pascal's Triangle 分析解答
Pascal's Triangle II 分析解答
Triangle 分析解答
Best Time to Buy and Sell Stock 分析解答
Best Time to Buy and Sell Stock II 分析解答
Best Time to Buy and Sell Stock III 分析解答
Binary Tree Maximum Path Sum 分析解答
Valid Palindrome 分析解答
Word Ladder 分析解答
Word Ladder II 
Longest Consecutive Sequence 分析解答
Sum Root to Leaf Numbers 分析解答
Surrounded Regions 分析解答
Palindrome Partitioning 分析解答
Palindrome Partitioning II 分析解答
Clone Graph 分析解答
Gas Station 分析解答
Candy 分析解答
Single Number 分析解答
Single Number II 分析解答
Copy List with Random Pointer 分析解答
Word Break 分析解答
Word Break II 分析解答
Linked List Cycle 分析解答
Linked List Cycle II 分析解答
Reorder List 分析解答
Binary Tree Preorder Traversal 分析解答
Binary Tree Postorder Traversal 分析解答
LRU Cache 分析解答
Insertion Sort List 分析解答
Sort List 分析解答
Max Points on a Line 分析解答
Evaluate Reverse Polish Notation 分析解答
Reverse Words in a String 分析解答
Maximum Product Subarray 分析解答
Find Minimum in Rotated Sorted Array 分析解答
Find Minimum in Rotated Sorted Array II 分析解答
Min Stack 分析解答
Binary Tree Upside Down 分析解答
Read N Characters Given Read4   
Read N Characters Given Read4 II - Call multiple times 
Longest Substring with At Most Two Distinct Characters 
Intersection of Two Linked Lists 
One Edit Distance 
Find Peak Element 
Missing Ranges 
Maximum Gap 
Compare Version Numbers 
Fraction to Recurring Decimal 
Two Sum II - Input array is sorted 
Excel Sheet Column Title 
Majority Element 
Two Sum III - Data structure design 
Excel Sheet Column Number 
Factorial Trailing Zeroes 
Binary Search Tree Iterator 
Dungeon Game 
Largest Number 
Reverse Words in a String II 
Repeated DNA Sequences 
Best Time to Buy and Sell Stock IV 
Rotate Array 
Reverse Bits 
Number of 1 Bits 
House Robber 
Binary Tree Right Side View 
Number of Islands 
Bitwise AND of Numbers Range 
Happy Number 
Remove Linked List Elements 
Count Primes 
Isomorphic Strings 
Reverse Linked List 
Course Schedule 
Implement Trie (Prefix Tree) 
Minimum Size Subarray Sum 
Course Schedule II 
Add and Search Word - Data structure design 
Word Search II 
House Robber II 
Shortest Palindrome 
Kth Largest Element in an Array 
Combination Sum III 
Contains Duplicate 
The Skyline Problem 
Contains Duplicate II 
Contains Duplicate III 
Maximal Square 
Count Complete Tree Nodes 
Rectangle Area 
Basic Calculator 
Implement Stack using Queues 
Invert Binary Tree 
Basic Calculator II 
Summary Ranges 
Majority Element II 
Kth Smallest Element in a BST 
Power of Two 
Implement Queue using Stacks 
Number of Digit One 分析解答
Palindrome Linked List 
Lowest Common Ancestor of a Binary Search Tree 分析解答
Lowest Common Ancestor of a Binary Tree 分析解答
Delete Node in a Linked List 
Product of Array Except Self 
Sliding Window Maximum 
Search a 2D Matrix II 
Different Ways to Add Parentheses 
Valid Anagram 
Shortest Word Distance 
Shortest Word Distance II 
Shortest Word Distance III 
Strobogrammatic Number 
Strobogrammatic Number II 
Strobogrammatic Number III 
Group Shifted Strings 
Count Univalue Subtrees 
Flatten 2D Vector 
Meeting Rooms 
Meeting Rooms II 
Factor Combinations 
Verify Preorder Sequence in Binary Search Tree 
Paint House 
Binary Tree Paths 
Add Digits 
3Sum Smaller 
Single Number III 
Graph Valid Tree 
Ugly Number 
Ugly Number II 
Paint House II 
Palindrome Permutation 
Palindrome Permutation II 
Missing Number 
Alien Dictionary 
Closest Binary Search Tree Value 
Encode and Decode Strings 
Closest Binary Search Tree Value II 
Integer to English Words 
H-Index 
H-Index II 
Paint Fence 
Find the Celebrity 
First Bad Version 
Perfect Squares 
Wiggle Sort 
Zigzag Iterator 
Expression Add Operators 
Move Zeroes 
Peeking Iterator 
Inorder Successor in BST 
Walls and Gates 
Find the Duplicate Number 
Unique Word Abbreviation 
Game of Life 
Word Pattern 
Word Pattern II 
Nim Game 
Flip Game 
Flip Game II 
Find Median from Data Stream 
Best Meeting Point 
Serialize and Deserialize Binary Tree 
Binary Tree Longest Consecutive Sequence 
Bulls and Cows 
Longest Increasing Subsequence 
Remove Invalid Parentheses 
Smallest Rectangle Enclosing Black Pixels 
Range Sum Query - Immutable 
Range Sum Query 2D - Immutable 
Number of Islands II 
Additive Number 
Range Sum Query - Mutable 
Range Sum Query 2D - Mutable 
Best Time to Buy and Sell Stock with Cooldown 
Minimum Height Trees 
Sparse Matrix Multiplication 
Burst Balloons 
Super Ugly Number 
Binary Tree Vertical Order Traversal 
Count of Smaller Numbers After Self 
Remove Duplicate Letters 
Shortest Distance from All Buildings 
Maximum Product of Word Lengths 
Bulb Switcher 
Generalized Abbreviation 
Create Maximum Number 
Coin Change 
Number of Connected Components in an Undirected Graph 
Wiggle Sort II 
Maximum Size Subarray Sum Equals k 
Power of Three 
Count of Range Sum 
Odd Even Linked List 
Longest Increasing Path in a Matrix 
Patching Array 
Verify Preorder Serialization of a Binary Tree 
Reconstruct Itinerary 
Largest BST Subtree 
Increasing Triplet Subsequence 
Self Crossing 
Palindrome Pairs 
House Robber III 
Counting Bits 
Nested List Weight Sum 
Longest Substring with At Most K Distinct Characters 
Flatten Nested List Iterator 
Power of Four 
Integer Break 
Reverse String 
Reverse Vowels of a String 
Moving Average from Data Stream 
Top K Frequent Elements 
Design Tic-Tac-Toe   
Intersection of Two Arrays 
Intersection of Two Arrays II 
Android Unlock Patterns 
Data Stream as Disjoint Intervals 
Design Snake Game 
Russian Doll Envelopes 
Line Reflection 
Count Numbers with Unique Digits 
Rearrange String k Distance Apart   
Logger Rate Limiter 
Sort Transformed Array 
Bomb Enemy 
Design Hit Counter 
Max Sum of Rectangle No Larger Than K 
Nested List Weight Sum II 
Water and Jug Problem 
Find Leaves of Binary Tree 
Valid Perfect Square 
Largest Divisible Subset 
Plus One Linked List 
Range Addition 
Sum of Two Integers 
Super Pow 
Find K Pairs with Smallest Sums 
Guess Number Higher or Lower 
Guess Number Higher or Lower II 
Wiggle Subsequence 
Combination Sum IV 
Kth Smallest Element in a Sorted Matrix 
Design Phone Directory 
Insert Delete GetRandom O(1) 
Insert Delete GetRandom O(1) - Duplicates allowed 
Linked List Random Node 
Ransom Note 
Shuffle an Array 
Mini Parser
 
Lexicographical Numbers 
First Unique Character in a String 
Longest Absolute File Path 
Find the Difference 
Perfect Rectangle 
Is Subsequence 
UTF-8 Validation 
Decode String 
Longest Substring with At Least K Repeating Characters 
Rotate Function
 
Integer Replacement
 
Random Pick Index 
Evaluate Division 
Nth Digit   
Binary Watch   
Remove K Digits 
Frog Jump 
Sum of Left Leaves 
Convert a Number to Hexadecimal   
Queue Reconstruction by Height 
Trapping Rain Water II   
Valid Word Abbreviation 
Longest Palindrome   
Split Array Largest Sum   

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值