数据结构与算法/leetcode/lintcode题解
Preface
Part I – Basics
Basics Data Structure
String
Linked List
Binary Tree
Huffman Compression
Queue
Heap
Stack
Set
Map
Graph
Basics Sorting
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
Heap Sort
Bucket Sort
Counting Sort
Radix Sort
Basics Algorithm
Divide and Conquer
Binary Search
Math
Greatest Common Divisor
Prime
Knapsack
Probability
Shuffle
Basics Misc
Bit Manipulation
Part II – Coding
String
strStr
Two Strings Are Anagrams
Compare Strings
Anagrams
Longest Common Substring
Rotate String
Reverse Words in a String
Valid Palindrome
Longest Palindromic Substring
Space Replacement
Wildcard Matching
Length of Last Word
Count and Say
Integer Array
Remove Element
Zero Sum Subarray
Subarray Sum K
Subarray Sum Closest
Recover Rotated Sorted Array
Product of Array Exclude Itself
Partition Array
First Missing Positive
2 Sum
3 Sum
3 Sum Closest
Remove Duplicates from Sorted Array
Remove Duplicates from Sorted Array II
Merge Sorted Array
Merge Sorted Array II
Median
Partition Array by Odd and Even
Kth Largest Element
Binary Search
Binary Search
Search Insert Position
Search for a Range
First Bad Version
Search a 2D Matrix
Search a 2D Matrix II
Find Peak Element
Search in Rotated Sorted Array
Search in Rotated Sorted Array II
Find Minimum in Rotated Sorted Array
Find Minimum in Rotated Sorted Array II
Median of two Sorted Arrays
Sqrt x
Wood Cut
Math and Bit Manipulation
Single Number
Single Number II
Single Number III
O1 Check Power of 2
Convert Integer A to Integer B
Factorial Trailing Zeroes
Unique Binary Search Trees
Update Bits
Fast Power
Hash Function
Count 1 in Binary
Fibonacci
A plus B Problem
Print Numbers by Recursion
Majority Number
Majority Number II
Majority Number III
Digit Counts
Ugly Number
Plus One
Linked List
Remove Duplicates from Sorted List
Remove Duplicates from Sorted List II
Remove Duplicates from Unsorted List
Partition List
Two Lists Sum
Two Lists Sum Advanced
Remove Nth Node From End of List
Linked List Cycle
Linked List Cycle II
Reverse Linked List
Reverse Linked List II
Merge Two Sorted Lists
Merge k Sorted Lists
Reorder List
Copy List with Random Pointer
Sort List
Insertion Sort List
Check if a singly linked list is palindrome
Delete Node in the Middle of Singly Linked List
Rotate List
Swap Nodes in Pairs
Remove Linked List Elements
Binary Tree
Binary Tree Preorder Traversal
Binary Tree Inorder Traversal
Binary Tree Postorder Traversal
Binary Tree Level Order Traversal
Binary Tree Level Order Traversal II
Maximum Depth of Binary Tree
Balanced Binary Tree
Binary Tree Maximum Path Sum
Lowest Common Ancestor
Invert Binary Tree
Diameter of a Binary Tree
Construct Binary Tree from Preorder and Inorder Traversal
Construct Binary Tree from Inorder and Postorder Traversal
Subtree
Binary Tree Zigzag Level Order Traversal
Binary Tree Serialization
Binary Search Tree
Insert Node in a Binary Search Tree
Validate Binary Search Tree
Search Range in Binary Search Tree
Convert Sorted Array to Binary Search Tree
Convert Sorted List to Binary Search Tree
Binary Search Tree Iterator
Exhaustive Search
Subsets
Unique Subsets
Permutations
Unique Permutations
Next Permutation
Previous Permuation
Unique Binary Search Trees II
Permutation Index
Permutation Index II
Permutation Sequence
Palindrome Partitioning
Combinations
Combination Sum
Combination Sum II
Minimum Depth of Binary Tree
Word Search
Dynamic Programming
Triangle
Backpack
Backpack II
Minimum Path Sum
Unique Paths
Unique Paths II
Climbing Stairs
Jump Game
Word Break
Longest Increasing Subsequence
Palindrome Partitioning II
Longest Common Subsequence
Edit Distance
Jump Game II
Best Time to Buy and Sell Stock
Best Time to Buy and Sell Stock II
Best Time to Buy and Sell Stock III
Best Time to Buy and Sell Stock IV
Distinct Subsequences
Interleaving String
Maximum Subarray
Maximum Subarray II
Longest Increasing Continuous subsequence
Longest Increasing Continuous subsequence II
Graph
Find the Connected Component in the Undirected Graph
Route Between Two Nodes in Graph
Topological Sorting
Word Ladder
Bipartial Graph Part I
Data Structure
Implement Queue by Two Stacks
Min Stack
Sliding Window Maximum
Longest Words
Heapify
Problem Misc
Nuts and Bolts Problem
String to Integer
Insert Interval
Merge Intervals
Minimum Subarray
Matrix Zigzag Traversal
Valid Sudoku
Add Binary
Reverse Integer
Gray Code
Find the Missing Number
Minimum Window Substring
Continuous Subarray Sum
Continuous Subarray Sum II
Longest Consecutive Sequence
Part III – Contest
Google APAC
APAC 2015 Round B
Problem A. Password Attacker
Microsoft
Microsoft 2015 April
Problem A. Magic Box
Problem B. Professor Q\’s Software
Problem C. Islands Travel
Problem D. Recruitment
Microsoft 2015 April 2
Problem A. Lucky Substrings
Problem B. Numeric Keypad
Problem C. Spring Outing
Microsoft 2015 September 2
Problem A. Farthest Point
Appendix I Interview and Resume
Interview
Resume
本书使用 GeChiUI.com 发布
Microsoft 2015 April
Microsoft 2015 April
最后更新于:2022-04-02 01:14:52
# Microsoft 2015 April 本小节总结 Microsoft 2015年四月第一次招实习生的题,题目列表见 [hihoCoder](http://hihocoder.com/contest/mstest2015april/problems).
';