Back to Leetcode Go

LeetCode by Go

README_old.md

1.7.1112.0 KB
Original Source

LeetCode by Go

[LeetCode Online Judge] (https://leetcode.com/) is a website containing many algorithm questions. Most of them are real interview questions of Google, Facebook, LinkedIn, Apple, etc. This repo shows my solutions by Go with the code style strictly follows the Google Golang Style Guide. Please feel free to reference and STAR to support this repo, thank you!

<p align='center'> </p>

数据结构

数据结构变种相关题目
顺序线性表:向量
单链表1.双链表
2.静态链表
3.对称矩阵
4.稀疏矩阵
广义栈
队列1.链表实现
2.循环数组实现
3.双端队列
字符串1.KMP算法
2.有限状态自动机
3.模式匹配有限状态自动机
4.BM模式匹配算法
5.BM-KMP算法
1.二叉树
2.并查集
3.Huffman数
数组实现的堆1.极大堆和极小堆
2.极大极小堆
3.双端堆
4.d叉堆
树实现的堆1.左堆
2.扁堆
3.二项式堆
4.斐波那契堆
5.配对堆
查找1.哈希表
2.跳跃表
3.排序二叉树
4.AVL树
5.B树
6.AA树
7.红黑树
8.排序二叉堆
9.Splay树
10.双链树
11.Trie树

Data Structures

标识了 (已全部做完) 的专题是全部完成了的,没有标识的是还没有做完的

Companies

算法

一. 目录

题号题目通过率难度收藏
1Two Sum38%Easy
2Add Two Numbers28%Medium
3Longest Substring Without Repeating Characters24%Medium
4Median of Two Sorted Arrays23%Hard
5Longest Palindromic Substring25%Medium
6ZigZag Conversion27%Medium
7Reverse Integer24%Easy
8String to Integer (atoi)14%Medium
9Palindrome Number35%Easy
10Regular Expression Matching24%Hard❤️
11Container With Most Water37%Medium
12Integer to Roman46%Medium
13Roman to Integer48%Easy
14Longest Common Prefix31%Easy
153Sum21%Medium
163Sum Closest31%Medium
17Letter Combinations of a Phone Number36%Medium
184Sum27%Medium
19Remove Nth Node From End of List33%Medium
20Valid Parentheses33%Easy
21Merge Two Sorted Lists41%Easy
22Generate Parentheses48%Medium❤️
23Merge k Sorted Lists28%Hard
24Swap Nodes in Pairs39%Medium❤️
25Reverse Nodes in k-Group31%Hard❤️
26Remove Duplicates from Sorted Array36%Easy❤️
27Remove Element40%Easy
28Implement strStr()28%Easy
29Divide Two Integers15%Medium
30Substring with Concatenation of All Words22%Hard❤️
31Next Permutation29%Medium❤️
32Longest Valid Parentheses23%Hard
33Search in Rotated Sorted Array31%Medium❤️
34Search for a Range31%Medium
35Search Insert Position40%Easy
36Valid Sudoku37%Medium❤️
37Sudoku Solver32%Hard❤️
38Count and Say36%Easy
39Combination Sum41%Medium
40Combination Sum II35%Medium
41First Missing Positive25%Hard
42Trapping Rain Water37%Hard
43Multiply Strings28%Medium
44Wildcard Matching21%Hard❤️
45Jump Game II26%Hard
46Permutations47%Medium
47Permutations II35%Medium
48Rotate Image41%Medium
49Group Anagrams38%Medium❤️
50Pow(x, n)26%Medium
51N-Queens33%Hard
52N-Queens II46%Hard
53Maximum Subarray40%Easy❤️
54Spiral Matrix27%Medium❤️
55Jump Game29%Medium
56Merge Intervals31%Medium❤️
57Insert Interval28%Hard
58Length of Last Word32%Easy
59Spiral Matrix II41%Medium❤️
60Permutation Sequence29%Medium
61Rotate List24%Medium❤️
62Unique Paths42%Medium❤️
63Unique Paths II32%Medium
64Minimum Path Sum40%Medium
65Valid Number12%Hard
66Plus One39%Easy
67Add Binary34%Easy
68Text Justification20%Hard
69Sqrt(x)28%Easy
70Climbing Stairs41%Easy
71Simplify Path26%Medium
72Edit Distance32%Hard❤️
73Set Matrix Zeroes36%Medium❤️
74Search a 2D Matrix34%Medium
75Sort Colors38%Medium❤️
76Minimum Window Substring26%Hard❤️
77Combinations41%Medium
78Subsets44%Medium❤️
79Word Search28%Medium
80Remove Duplicates from Sorted Array II36%Medium❤️
81Search in Rotated Sorted Array II32%Medium
82Remove Duplicates from Sorted List II29%Medium❤️
83Remove Duplicates from Sorted List40%Easy
84Largest Rectangle in Histogram27%Hard❤️
85Maximal Rectangle29%Hard❤️
86Partition List33%Medium
87Scramble String29%Hard❤️
88Merge Sorted Array32%Easy
89Gray Code42%Medium
90Subsets II38%Medium❤️
91Decode Ways20%Medium❤️
92Reverse Linked List II31%Medium
93Restore IP Addresses28%Medium❤️
94Binary Tree Inorder Traversal49%Medium
95Unique Binary Search Trees II32%Medium❤️
96Unique Binary Search Trees41%Medium
97Interleaving String25%Hard❤️
98Validate Binary Search Tree24%Medium❤️
99Recover Binary Search Tree31%Hard❤️
100Same Tree47%Easy
101Symmetric Tree40%Easy❤️
102Binary Tree Level Order Traversal42%Medium
103Binary Tree Zigzag Level Order Traversal36%Medium
104Maximum Depth of Binary Tree54%Easy
105Construct Binary Tree from Preorder and Inorder Traversal34%Medium❤️
106Construct Binary Tree from Inorder and Postorder Traversal33%Medium❤️
107Binary Tree Level Order Traversal II42%Easy
108Convert Sorted Array to Binary Search Tree44%Easy
109Convert Sorted List to Binary Search Tree35%Medium
110Balanced Binary Tree38%Easy
111Minimum Depth of Binary Tree33%Easy
112Path Sum34%Easy
113Path Sum II35%Medium
114Flatten Binary Tree to Linked List36%Medium❤️
115Distinct Subsequences32%Hard❤️
118Pascal's Triangle40%Easy
119Pascal's Triangle II38%Easy
120Triangle34%Medium❤️
121Best Time to Buy and Sell Stock42%Easy
122Best Time to Buy and Sell Stock II47%Easy
123Best Time to Buy and Sell Stock III30%Hard
124Binary Tree Maximum Path Sum27%Hard❤️
125Valid Palindrome27.0%Easy
126Word Ladder II14%Hard❤️
127Word Ladder20%Medium❤️
128Longest Consecutive Sequence38%Hard
129Sum Root to Leaf Numbers37%Medium
130Surrounded Regions19%Medium❤️
131Palindrome Partitioning35%Medium❤️
132Palindrome Partitioning II24%Hard❤️
134Gas Station29%Medium❤️
135Candy25%Hard
136Single Number55%Easy
137Single Number II42%Medium❤️
139Word Break31%Medium❤️
140Word Break II24%Hard❤️
141Linked List Cycle24%Hard❤️
142Linked List Cycle II24%Hard❤️
143Reorder List26%Medium❤️
144Binary Tree Preorder Traversal46%Medium❤️
145Binary Tree Postorder Traversal42%Hard
146LRU Cache19%Hard❤️
147Insertion Sort List33%Medium❤️
148Sort List29%Medium❤️
149Max Points on a Line15%Hard❤️
150Evaluate Reverse Polish Notation28%Medium
152Maximum Product Subarray26%Medium❤️
153Find Minimum in Rotated Sorted Array40%Medium
154Find Minimum in Rotated Sorted Array II37%Hard
155Min Stack31%Easy
162Find Peak Element38%Medium
164Maximum Gap30%Hard
165Compare Version Numbers20%Medium
166Fraction to Recurring Decimal18%Medium❤️
167Two Sum II - Input array is sorted47%Easy
168Excel Sheet Column Title27%Easy❤️
169Majority Element48%Easy❤️
171Excel Sheet Column Number48%Easy
172Factorial Trailing Zeroes36%Easy
174Dungeon Game24%Hard❤️
179Largest Number23%Medium❤️
187Repeated DNA Sequences33%Medium
188Best Time to Buy and Sell Stock IV24%Hard❤️
189Rotate Array25%Easy
198House Robber39%Easy❤️
199Binary Tree Right Side View42%Medium
200Number of Islands36%Medium
201Bitwise AND of Numbers Range34%Medium❤️
202Happy Number41%Easy
203Remove Linked List Elements33%Easy
204Count Primes26%Easy❤️
205Isomorphic Strings34%Easy❤️
206Reverse Linked List46%Easy
207Course Schedule33%Medium❤️
208Implement Trie (Prefix Tree)30%Medium❤️
209Minimum Size Subarray Sum32%Medium
210Course Schedule II30%Medium
211Add and Search Word - Data structure design25%Medium❤️
212Word Search II24%Hard❤️
213House Robber II34%Medium
214Shortest Palindrome25%Hard❤️
215Kth Largest Element in an Array40%Medium❤️
216Combination Sum III47%Medium
217Contains Duplicate47%Easy
218The Skyline Problem29%Hard❤️
219Contains Duplicate II32%Easy
220Contains Duplicate III18%Medium❤️
221Maximal Square30%Medium❤️
223Rectangle Area33%Medium
224Basic Calculator28%Hard
225Implement Stack using Queues34%Easy
226Invert Binary Tree53%Easy
227Basic Calculator II30%Medium
228Summary Ranges32%Medium
229Majority Element II29%Medium❤️
230Kth Smallest Element in a BST45%Medium
231Power of Two40%Easy
232Implement Queue using Stacks38%Easy
233Number of Digit One29%Hard❤️
234Palindrome Linked List33%Easy
238Product of Array Except Self50%Medium
239Sliding Window Maximum34%Hard❤️
240Search a 2D Matrix II39%Medium❤️
241Different Ways to Add Parentheses46%Medium
242Valid Anagram47%Easy
257Binary Tree Paths41%Easy
258Add Digits51%Easy
260Single Number III53%Medium❤️
263Ugly Number39%Easy
264Ugly Number II33%Medium❤️
268Missing Number45%Easy
273Integer to English Words22%Hard❤️
274H-Index33%Medium
275H-Index II34%Medium❤️
279Perfect Squares37%Medium❤️
282Expression Add Operators30%Hard❤️
283Move Zeroes51%Easy
287Find the Duplicate Number44%Medium❤️
289Game of Life37%Medium❤️
290Word Pattern33%Easy
292Nim Game55%Easy❤️
295Find Median from Data Stream29%Hard❤️
299Bulls and Cows35%Medium
300Longest Increasing Subsequence38%Medium❤️
301Remove Invalid Parentheses35%Hard❤️
303Range Sum Query - Immutable32%Easy
304Range Sum Query 2D - Immutable27%Medium
306Additive Number27%Medium
307Range Sum Query - Mutable22%Medium
309Best Time to Buy and Sell Stock with Cooldown41%Medium❤️
310Minimum Height Trees28%Medium
312Burst Balloons43%Hard❤️
313Super Ugly Number38%Medium❤️
315Count of Smaller Numbers After Self34%Hard❤️
316Remove Duplicate Letters30%Hard❤️
318Maximum Product of Word Lengths45%Medium❤️
319Bulb Switcher42%Medium❤️
321Create Maximum Number24%Hard❤️
322Coin Change26%Medium❤️
324Wiggle Sort II26%Medium
326Power of Three40%Easy❤️
327Count of Range Sum30%Hard❤️
328Odd Even Linked List44%Medium❤️
329Longest Increasing Path in a Matrix37%Hard❤️
330Patching Array32%Hard
331Verify Preorder Serialization of a Binary Tree37%Medium❤️
332Reconstruct Itinerary29%Medium❤️
334Increasing Triplet Subsequence39%Medium❤️
335Self Crossing26%Hard
336Palindrome Pairs27%Hard❤️
337House Robber III44%Medium❤️
338Counting Bits62%Medium
342Power of Four39%Easy
343Integer Break46%Medium
344Reverse String60%Easy
345Reverse Vowels of a String39%Easy
347Top K Frequent Elements49%Medium
349Intersection of Two Arrays48%Easy
350Intersection of Two Arrays II44%Easy❤️
352Data Stream as Disjoint Intervals41%Hard
354Russian Doll Envelopes32%Hard❤️
355Design Twitter25%Medium❤️
357Count Numbers with Unique Digits46%Medium❤️
363Max Sum of Rectangle No Larger Than K33%Hard❤️
365Water and Jug Problem28%Medium❤️
367Valid Perfect Square38%Easy
368Largest Divisible Subset33%Medium❤️
371Sum of Two Integers50%Easy❤️
372Super Pow34%Medium
373Find K Pairs with Smallest Sums31%Medium❤️
375Guess Number Higher or Lower II36%Medium
376Wiggle Subsequence36%Medium❤️
377Combination Sum IV42%Medium
378Kth Smallest Element in a Sorted Matrix45%Medium❤️
380Insert Delete GetRandom O(1)39%Medium❤️
381Insert Delete GetRandom O(1) - Duplicates allowed29%Hard❤️
382Linked List Random Node47%Medium
383Ransom Note47%Easy
384Shuffle an Array47%Medium❤️
385Mini Parser30%Medium❤️
387First Unique Character in a String47%Easy
388Longest Absolute File Path37%Medium
389Find the Difference51%Easy
390Elimination Game42%Medium❤️
391Perfect Rectangle27%Hard
392Is Subsequence44%Medium❤️
393UTF-8 Validation34%Medium❤️
394Decode String42%Medium
395Longest Substring with At Least K Repeating Characters35%Medium
396Rotate Function33%Medium❤️
397Integer Replacement30%Medium❤️
398Random Pick Index44%Medium
399Evaluate Division42%Medium❤️
400Nth Digit30%Easy❤️
401Binary Watch44%Easy
402Remove K Digits25%Medium❤️
403Frog Jump32%Hard❤️
404Sum of Left Leaves47%Easy
405Convert a Number to Hexadecimal41%Easy
406Queue Reconstruction by Height56%Medium❤️
407Trapping Rain Water II37%Hard
409Longest Palindrome45%Easy
410Split Array Largest Sum39%Hard
412Fizz Buzz58%Easy
413Arithmetic Slices54%Medium
414Third Maximum Number28%Easy
415Add Strings41%Easy
416Partition Equal Subset Sum38%Medium❤️
417Pacific Atlantic Water Flow34%Medium
419Battleships in a Board63%Medium
420Strong Password Checker19%Hard❤️
421Maximum XOR of Two Numbers in an Array47%Medium❤️
423Reconstruct Original Digits from English44%Medium
424Longest Repeating Character Replacement42%Medium❤️
432All O`one Data Structure27%Hard❤️
434Number of Segments in a String36%Easy
435Non-overlapping Intervals41%Medium❤️
436Find Right Interval41%Medium
437Path Sum III40%Easy❤️
438Find All Anagrams in a String33%Easy
440K-th Smallest in Lexicographical Order25%Hard❤️
441Arranging Coins36%Easy
442Find All Duplicates in an Array56%Medium
443String Compression35%Easy❤️
445Add Two Numbers II46%Medium❤️
446Arithmetic Slices II - Subsequence28%Hard❤️
447Number of Boomerangs46%Easy
448Find All Numbers Disappeared in an Array51%Easy
450Delete Node in a BST37%Medium❤️
451Sort Characters By Frequency51%Medium
452Minimum Number of Arrows to Burst Balloons44%Medium
453Minimum Moves to Equal Array Elements48%Easy
4544Sum II47%Medium
455Assign Cookies47%Easy
456132 Pattern27%Medium❤️
459Repeated Substring Pattern38%Easy❤️
460LFU Cache25%Hard
461Hamming Distance69%Easy
462Minimum Moves to Equal Array Elements II51%Medium
463Island Perimeter57%Easy
464Can I Win25%Medium❤️
466Count The Repetitions27%Hard❤️
467Unique Substrings in Wraparound String33%Medium❤️
468Validate IP Address20%Medium
472Concatenated Words30%Hard
473Matchsticks to Square35%Medium❤️
474Ones and Zeroes38%Medium
475Heaters29%Easy
476Number Complement61%Easy
477Total Hamming Distance47%Medium❤️
479Largest Palindrome Product25%Easy
480Sliding Window Median30%Hard❤️
481Magical String45%Medium
482License Key Formatting39%Easy
483Smallest Good Base33%Hard❤️
485Max Consecutive Ones53%Easy
486Predict the Winner45%Medium
488Zuma Game37%Hard❤️
491Increasing Subsequences38%Medium❤️
492Construct the Rectangle48%Easy❤️
493Reverse Pairs20%Hard
494Target Sum43%Medium❤️
495Teemo Attacking51%Medium
496Next Greater Element I56%Easy
498Diagonal Traverse46%Medium
500Keyboard Row59%Easy
501Find Mode in Binary Search Tree37%Easy❤️
502IPO36%Hard
503Next Greater Element II48%Medium❤️
504Base 743%Easy
506Relative Ranks46%Easy
507Perfect Number32%Easy
508Most Frequent Subtree Sum52%Medium
513Find Bottom Left Tree Value56%Medium
514Freedom Trail39%Hard
515Find Largest Value in Each Tree Row55%Medium
516Longest Palindromic Subsequence42%Medium❤️
517Super Washing Machines36%Hard❤️
520Detect Capital51%Easy
521Longest Uncommon Subsequence I55%Easy
522Longest Uncommon Subsequence II31%Medium
523Continuous Subarray Sum23%Medium❤️
524Longest Word in Dictionary through Deleting43%Medium
525Contiguous Array41%Medium❤️
526Beautiful Arrangement53%Medium❤️
529Minesweeper49%Medium
530Minimum Absolute Difference in BST47%Easy❤️
532K-diff Pairs in an Array28%Easy
537Complex Number Multiplication63%Medium
538Convert BST to Greater Tree48%Easy
539Minimum Time Difference46%Medium
540Single Element in a Sorted Array55%Medium
541Reverse String II43%Easy
54201 Matrix33%Medium❤️
543Diameter of Binary Tree44%Easy
546Remove Boxes35%Hard❤️
547Friend Circles49%Medium❤️
551Student Attendance Record I44%Easy
552Student Attendance Record II31%Hard❤️
553Optimal Division55%Medium
554Brick Wall46%Medium
556Next Greater Element III28%Medium
557Reverse Words in a String III60%Easy
560Subarray Sum Equals K39%Medium❤️
561Array Partition I66%Easy
563Binary Tree Tilt47%Easy
564Find the Closest Palindrome17%Hard
565Array Nesting49%Medium
566Reshape the Matrix57%Easy
567Permutation in String36%Medium
572Subtree of Another Tree40%Easy❤️
575Distribute Candies57%Easy
576Out of Boundary Paths30%Medium❤️
581Shortest Unsorted Continuous Subarray29%Easy❤️
583Delete Operation for Two Strings44%Medium❤️
587Erect the Fence33%Hard❤️
591Tag Validator31%Hard❤️
592Fraction Addition and Subtraction46%Medium
593Valid Square39%Medium
594Longest Harmonious Subsequence40%Easy
598Range Addition II48%Easy
599Minimum Index Sum of Two Lists46%Easy
600Non-negative Integers without Consecutive Ones31%Hard❤️
605Can Place Flowers30%Easy❤️
606Construct String from Binary Tree49%Easy
609Find Duplicate File in System52%Medium
611Valid Triangle Number42%Medium❤️
617Merge Two Binary Trees67%Easy
621Task Scheduler42%Medium❤️
623Add One Row to Tree46%Medium
628Maximum Product of Three Numbers44%Easy❤️
629K Inverse Pairs Array27%Hard
630Course Schedule III29%Hard❤️
632Smallest Range41%Hard
633Sum of Square Numbers32%Easy
636Exclusive Time of Functions44%Medium❤️
637Average of Levels in Binary Tree55%Easy
638Shopping Offers45%Medium❤️
639Decode Ways II24%Hard
640Solve the Equation38%Medium
643Maximum Average Subarray I37%Easy
645Set Mismatch39%Easy❤️
646Maximum Length of Pair Chain47%Medium
647Palindromic Substrings54%Medium❤️
648Replace Words47%Medium
649Dota2 Senate36%Medium❤️
6502 Keys Keyboard44%Medium
652Find Duplicate Subtrees36%Medium
653Two Sum IV - Input is a BST49%Easy
654Maximum Binary Tree69%Medium❤️
655Print Binary Tree49%Medium
657Judge Route Circle68%Easy
658Find K Closest Elements34%Medium❤️
659Split Array into Consecutive Subsequences36%Medium❤️
661Image Smoother46%Easy
662Maximum Width of Binary Tree37%Medium
664Strange Printer34%Hard❤️
665Non-decreasing Array20%Easy
667Beautiful Arrangement II51%Medium
668Kth Smallest Number in Multiplication Table40%Hard
669Trim a Binary Search Tree58%Easy
670Maximum Swap38%Medium❤️
671Second Minimum Node In a Binary Tree41%Easy
672Bulb Switcher II49%Medium
673Number of Longest Increasing Subsequence31%Medium❤️
674Longest Continuous Increasing Subsequence42%Easy
675Cut Off Trees for Golf Event27%Hard❤️
676Implement Magic Dictionary49%Medium
677Map Sum Pairs51%Medium❤️
678Valid Parenthesis String29%Medium❤️
67924 Game38%Hard❤️
680Valid Palindrome II32%Easy
682Baseball Game58%Easy
684Redundant Connection43%Medium
685Redundant Connection II27%Hard❤️
686Repeated String Match32%Easy❤️
687Longest Univalue Path32%Easy
688Knight Probability in Chessboard39%Medium
689Maximum Sum of 3 Non-Overlapping Subarrays41%Hard
691Stickers to Spell Word34%Hard❤️
692Top K Frequent Words41%Medium
693Binary Number with Alternating Bits55%Easy
695Max Area of Island51%Easy❤️
696Count Binary Substrings50%Easy
697Degree of an Array46%Easy
698Partition to K Equal Sum Subsets37%Medium❤️
699Falling Squares37%Hard
712Minimum ASCII Delete Sum for Two Strings51%Medium❤️
713Subarray Product Less Than K33%Medium❤️
714Best Time to Buy and Sell Stock with Transaction Fee45%Medium❤️
715Range Module31%Hard
7171-bit and 2-bit Characters49%Easy
718Maximum Length of Repeated Subarray41%Medium❤️
719Find K-th Smallest Pair Distance27%Hard❤️
720Longest Word in Dictionary41%Easy
721Accounts Merge32%Medium❤️
722Remove Comments27%Medium❤️
724Find Pivot Index39%Easy
725Split Linked List in Parts47%Medium
726Number of Atoms43%Hard❤️
728Self Dividing Numbers66%Easy
729My Calendar I42%Medium
730Count Different Palindromic Subsequences34%Hard❤️
731My Calendar II37%Medium❤️
732My Calendar III50%Hard
733Flood Fill47%Easy
735Asteroid Collision37%Medium
736Parse Lisp Expression42%Hard❤️
738Monotone Increasing Digits40%Medium
739Daily Temperatures52%Medium❤️
740Delete and Earn43%Medium❤️
741Cherry Pickup23%Hard
743Network Delay Time34%Medium
744Find Smallest Letter Greater Than Target44%Easy
745Prefix and Suffix Search25%Hard
746Min Cost Climbing Stairs43%Easy
747Largest Number At Least Twice of Others41%Easy
748Shortest Completing Word51%Medium
749Contain Virus39%Hard
752Open the Lock38%Medium❤️
753Cracking the Safe39%Hard❤️
754Reach a Number26%Medium❤️
756Pyramid Transition Matrix45%Medium❤️
757Set Intersection Size At Least Two34%Hard
761Special Binary String41%Hard
762Prime Number of Set Bits in Binary Representation55%Easy
763Partition Labels64%Medium
764Largest Plus Sign37%Medium
765Couples Holding Hands48%Hard
766Toeplitz Matrix57%Easy
767Reorganize String35%Medium
768Max Chunks To Make Sorted II42%Hard
769Max Chunks To Make Sorted47%Medium
770Basic Calculator IV43%Hard❤️
771Jewels and Stones82%Easy
773Sliding Puzzle47%Hard
775Global and Local Inversions31%Medium
777Swap Adjacent in LR String27%Medium
778Swim in Rising Water44%Hard
779K-th Symbol in Grammar35%Medium
780Reaching Points21%Hard
781Rabbits in Forest49%Medium
782Transform to Chessboard35%Hard
783Minimum Distance Between BST Nodes47%Easy
784Letter Case Permutation52%Easy❤️
785Is Graph Bipartite?38%Medium❤️
786K-th Smallest Prime Fraction29%Hard❤️
787Cheapest Flights Within K Stops30%Medium❤️
788Rotated Digits50%Easy
789Escape The Ghosts47%Medium
790Domino and Tromino Tiling32%Medium❤️
791Custom Sort String60%Medium
792Number of Matching Subsequences35%Medium❤️
793* Preimage Size of Factorial Zeroes Function45%Hard
794* Valid Tic-Tac-Toe State27%Medium
795* Number of Subarrays with Bounded Maximum40%Medium
796* Rotate String54%Easy
797* All Paths From Source to Target69%Medium
798* Smallest Rotation with Highest Score31%Hard
799* Champagne Tower28%Medium
801* Minimum Swaps To Make Sequences Increasing23%Medium
802* Find Eventual Safe States35%Medium
803* Bricks Falling When Hit20%Hard
804* Unique Morse Code Words76%Easy
805* Split Array With Same Average19%Hard
806* Number of Lines To Write String64%Easy
807* Max Increase to Keep City Skyline82%Medium
808* Soup Servings30%Medium
809* Expressive Words34%Medium
810* Chalkboard XOR Game35%Hard
811* Subdomain Visit Count65%Easy
812* Largest Triangle Area :new:51%Easy
813* Largest Sum of Averages :new:37%Medium
814* Binary Tree Pruning :new:73%Medium
815* Bus Routes :new:30%Hard

以下免费的算法题,暂时不能使用 Go 解答


二.分类

Array

TitleSolutionDifficultyTimeSpace收藏
1. Two SumGoEasyO(n)O(n)
11. Container With Most WaterGoMediumO(n)O(1)
15. 3SumGoMediumO(n^2)O(n)
16. 3Sum ClosestGoMediumO(n^2)O(1)
18. 4SumGoMediumO(n^3)O(n^2)
26. Remove Duplicates from Sorted ArrayGoEasyO(n)O(1)
27. Remove ElementGoEasyO(n)O(1)
39. Combination SumGoMediumO(n log n)O(n)
40. Combination Sum IIGoMediumO(n log n)O(n)
41. First Missing PositiveGoHardO(n)O(n)
42. Trapping Rain WaterGoHardO(n)O(1)
48. Rotate ImageGoMediumO(n)O(1)
53. Maximum SubarrayGoEasyO(n)O(n)
54. Spiral MatrixGoMediumO(n)O(n^2)
56. Merge IntervalsGoMediumO(n log n)O(1)
57. Insert IntervalGoHardO(n)O(1)
59. Spiral Matrix IIGoMediumO(n)O(n^2)
62. Unique PathsGoMediumO(n^2)O(n^2)
63. Unique Paths IIGoMediumO(n^2)O(n^2)
64. Minimum Path SumGoMediumO(n^2)O(n^2)
75. Sort ColorsGoMediumO(n)O(1)
78. SubsetsGoMediumO(n^2)O(n)
79. Word SearchGoMediumO(n^2)O(n^2)
80. Remove Duplicates from Sorted Array IIGoMediumO(n^2)O(n^2)
84. Largest Rectangle in HistogramGoMediumO(n)O(n)
88. Merge Sorted ArrayGoEasyO(n)O(1)
90. Subsets IIGoMediumO(n^2)O(n)
120. TriangleGoMediumO(n^2)O(n)
121. Best Time to Buy and Sell StockGoEasyO(n)O(1)
122. Best Time to Buy and Sell Stock IIGoEasyO(n)O(1)
126. Word Ladder IIGoHardO(n)O(n^2)
152. Maximum Product SubarrayGoMediumO(n)O(1)
167. Two Sum II - Input array is sortedGoEasyO(n)O(1)
209. Minimum Size Subarray SumGoMediumO(n)O(1)
216. Combination Sum IIIGoMediumO(n)O(1)
217. Contains DuplicateGoEasyO(n)O(n)
219. Contains Duplicate IIGoEasyO(n)O(n)
283. Move ZeroesGoEasyO(n)O(1)
287. Find the Duplicate NumberGoEasyO(n)O(1)
532. K-diff Pairs in an ArrayGoEasyO(n)O(n)
566. Reshape the MatrixGoEasyO(n^2)O(n^2)
628. Maximum Product of Three NumbersGoEasyO(n)O(1)
713. Subarray Product Less Than KGoMediumO(n)O(1)
714. Best Time to Buy and Sell Stock with Transaction FeeGoMediumO(n)O(1)
746. Min Cost Climbing StairsGoEasyO(n)O(1)
766. Toeplitz MatrixGoEasyO(n)O(1)
867. Transpose MatrixGoEasyO(n)O(1)
891. Sum of Subsequence WidthsGoHardO(n)O(1)
907. Sum of Subarray MinimumsGoMediumO(n)O(1)
922. Sort Array By Parity IIGoMediumO(n)O(1)
969. Pancake SortingGoMediumO(n)O(1)
977. Squares of a Sorted ArrayGoEasyO(n)O(1)
TitleSolutionDifficultyTimeSpace
Max Consecutive OnesGoEasyO(n)O(1)
HeatersGoEasyO(nlogn)O(1)
Number of BoomerangsGoEasyO(n ^ 2)O(n)
Island PerimeterGoEasyO(nm)O(1)
Majority ElementGoEasyO(n)O(1)
Majority Element IIGoMediumO(n)O(1)
Intersection of Two ArraysGoEasyO(n)O(n)
Intersection of Two Arrays IIGoEasyO(n)O(n)
Contains DuplicateGoEasyO(n)O(n)
Contains Duplicate IIGoEasyO(n)O(n)
Remove Duplicates from Sorted ArrayGoEasyO(n)O(1)
Remove Duplicates from Sorted Array IIGoMediumO(n)O(1)
Move ZeroesGoEasyO(n)O(1)
Remove ElementGoEasyO(n)O(1)
Two SumGoEasyO(n)O(n)
3SumGoMediumO(n^2)O(nC3)
3Sum ClosestGoMediumO(n^2)O(nC3)
4SumGoMediumO(n^3)O(nC4)
Summary RangesGoMediumO(n)O(n)
Shortest Word DistanceGoEasyO(n)O(1)
Shortest Word Distance IIIGoMediumO(n)O(1)
Minimum Size Subarray SumGoMediumO(n)O(1)
Maximum Size Subarray Sum Equals kGoMediumO(n)O(n)
Smallest RangeGoHardO(nm)O(nm)
Product of Array Except SelfGoMediumO(n)O(n)
Rotate ArrayGoEasyO(n)O(1)
Rotate ImageGoMediumO(n^2)O(1)
Spiral MatrixGoMediumO(n^2)O(1)
Spiral Matrix IIGoMediumO(n^2)O(1)
Valid SudokuGoEasyO(n^2)O(n)
Set Matrix ZeroGoMediumO(n^2)O(1)
Next PermutationGoMediumO(n)O(1)
Gas StationGoMediumO(n)O(1)
Game of LifeGoMediumO(n)O(1)
Task SchedulerGoMediumO(nlogn)O(n)
Sliding Window Maximum GoHardO(n)O(n)
Longest Consecutive SequenceGoHardO(n)O(n)

String

TitleSolutionDifficultyTimeSpace
Fizz BuzzGoEasyO(n)O(1)
First Unique Character in a StringGoEasyO(n)O(1)
Keyboard RowGoEasyO(nm)O(n)
Valid PalindromeGoEasyO(n)O(n)
Valid Palindrome IIGoEasyO(n)O(n)
Detect CapitalGoEasyO(n)O(1)
Count and SayGoEasyO(n^2)O(n)
Flip GameGoEasyO(n)O(n)
Implement strStr()GoEasyO(nm)O(n)
Isomorphic StringsGoEasyO(n)O(n)
Reverse StringGoEasyO(n)O(n)
Reverse String IIGoEasyO(n)O(n)
Reverse Vowels of a StringGoEasyO(n)O(n)
Length of Last WordGoEasyO(n)O(n)
Add StringsGoEasyO(n)O(1)
Multiply StringsGoMediumO(n)O(1)
Palindrome PermutationGoEasyO(n)O(n)
Valid AnagramGoEasyO(nlogn)O(1)
Ransom NoteGoEasyO(n)O(n)
Group AnagramsGoMediumO(nmlogm + nlogn)O(n)
Longest Common PrefixGoEasyO(nm)O(m)
Longest Substring Without Repeating CharactersGoMediumO(n)O(n)
One Edit DistanceGoMediumO(n)O(n)
Word PatternGoEasyO(n)O(n)
Minimum Window SubstringGoHardO(n^2)O(n)
Text JustificationGoHardO(n)O(n)

Linked List (已全部做完)

  • 巧妙的构造虚拟头结点。可以使遍历处理逻辑更加统一。
  • 灵活使用递归。构造递归条件,使用递归可以巧妙的解题。不过需要注意有些题目不能使用递归,因为递归深度太深会导致超时和栈溢出。
  • 链表区间逆序。第 92 题。
  • 链表寻找中间节点。第 876 题。链表寻找倒数第 n 个节点。第 19 题。只需要一次遍历就可以得到答案。
  • 合并 K 个有序链表。第 21 题,第 23 题。
  • 链表归类。第 86 题,第 328 题。
  • 链表排序,时间复杂度要求 O(n * log n),空间复杂度 O(1)。只有一种做法,归并排序,至顶向下归并。第 148 题。
  • 判断链表是否存在环,如果有环,输出环的交叉点的下标;判断 2 个链表是否有交叉点,如果有交叉点,输出交叉点。第 141 题,第 142 题,第 160 题。
TitleSolutionDifficultyTimeSpace收藏
2. Add Two NumbersGoMediumO(n)O(1)
19. Remove Nth Node From End of ListGoMediumO(n)O(1)
21. Merge Two Sorted ListsGoEasyO(log n)O(1)
23. Merge k Sorted ListsGoHardO(log n)O(1)❤️
24. Swap Nodes in PairsGoMediumO(n)O(1)
25. Reverse Nodes in k-GroupGoHardO(log n)O(1)❤️
61. Rotate ListGoMediumO(n)O(1)
82. Remove Duplicates from Sorted List IIGoMediumO(n)O(1)
83. Remove Duplicates from Sorted ListGoEasyO(n)O(1)
86. Partition ListGoMediumO(n)O(1)❤️
92. Reverse Linked List IIGoMediumO(n)O(1)❤️
109. Convert Sorted List to Binary Search TreeGoMediumO(log n)O(n)
141. Linked List CycleGoEasyO(n)O(1)❤️
142. Linked List Cycle IIGoMediumO(n)O(1)❤️
143. Reorder ListGoMediumO(n)O(1)❤️
147. Insertion Sort ListGoMediumO(n)O(1)
148. Sort ListGoMediumO(log n)O(n)❤️
160. Intersection of Two Linked ListsGoEasyO(n)O(1)❤️
203. Remove Linked List ElementsGoEasyO(n)O(1)
206. Reverse Linked ListGoEasyO(n)O(1)
234. Palindrome Linked ListGoEasyO(n)O(1)
237. Delete Node in a Linked ListGoEasyO(n)O(1)
328. Odd Even Linked ListGoMediumO(n)O(1)
445. Add Two Numbers IIGoMediumO(n)O(n)
725. Split Linked List in PartsGoMediumO(n)O(1)
817. Linked List ComponentsGoMediumO(n)O(1)
707. Design Linked ListGoEasyO(n)O(1)
876. Middle of the Linked ListGoEasyO(n)O(1)❤️
1019. Next Greater Node In Linked ListGoMediumO(n)O(1)
---------------------------------------------------------------------------------------------------------------------------------------------

Stack (已全部做完)

TitleSolutionDifficultyTimeSpace
Valid ParenthesesGoEasyO(n)O(n)
Longest Valid ParenthesesGoHardO(n)O(n)
Evaluate Reverse Polish NotationGoMediumO(n)O(n)
Simplify PathGoMediumO(n)O(n)
Remove K DigitsGoMediumO(n)O(n)
Ternary Expression ParserGoMediumO(n)O(n)
Binary Tree Preorder TraversalGoMediumO(n)O(n)
Binary Tree Inorder TraversalGoMediumO(n)O(n)
Binary Tree Postorder TraversalGoHardO(n)O(n)

Tree

TitleSolutionDifficultyTimeSpace
Same TreeGoEasyO(n)O(n)
Symmetric TreeGoEasyO(n)O(n)
Invert Binary TreeGoEasyO(n)O(n)
Binary Tree Upside DownGoMediumO(n)O(1)
Minimum Depth of Binary TreeGoEasyO(n)O(1)
Maximum Depth of Binary TreeGoEasyO(n)O(1)
Diameter of Binary TreeGoEasyO(n)O(1)
Balanced Binary TreeGoEasyO(n)O(n)
Sum of Left LeavesGoEasyO(n)O(1)
Flatten Binary Tree to Linked ListGoMediumO(n)O(1)
Validate Binary Search TreeGoMediumO(n)O(n)
Binary Tree Level Order TraversalGoEasyO(n)O(n)
Binary Tree Level Order Traversal IIGoEasyO(n)O(n)
Binary Tree Zigzag Level Order TraversalGoMediumO(n)O(n)
Binary Tree Vertical Order TraversalGoMediumO(n)O(n)
Binary Tree Right Side ViewGoMediumO(n)O(n)
Construct Binary Tree from Preorder and Inorder TraversalGoMediumO(n)O(n)
Construct Binary Tree from Inorder and Postorder TraversalGoMediumO(n)O(n)
Path SumGoEasyO(n)O(n)
Path Sum IIGoMediumO(n)O(n)
Path Sum IIIGoEasyO(n^2)O(1)
Bnary Tree PathsGoEasyO(n)O(n)
Unique Binary Search TreesGoMediumO(n^2)O(n)
Recover Binary Search TreeGoHardO(n)O(1)
Merge Two Binary TreesGoEasyO(n)O(n)

Dynamic programming

TitleSolutionDifficultyTimeSpace
Nested List Weight SumGoEasyO(n)O(1)
Climbing StairsGoEasyO(n)O(1)
Min Cost Climbing StairsGoEasyO(n)O(n)
Unique PathsGoMediumO(mn)O(mn)
Unique Paths IIGoMediumO(mn)O(mn)
Decode WaysGoO(n)O(n)
Minimum Path SumGoMediumO(mn)O(mn)
Generate ParenthesesGoMediumO(2^n)O(n)
Different Ways to Add ParenthesesGoMediumO(n^n)O(n)
Best Time to Buy and Sell StockGoEasyO(n)O(1)
Best Time to Buy and Sell Stock IIGoMediumO(n)O(1)
Best Time to Buy and Sell Stock IIIGoHardO(n)O(n)
Best Time to Buy and Sell Stock IVGoHardO(n^2)O(n)
Best Time to Buy and Sell Stock with CooldownGoMediumO(n^2)O(n)
Coin ChangeGoMediumO(n^2)O(n)
Coin Change IIGoMediumO(n^2)O(n)
Longest Increasing SubsequenceGoMediumO(n^2)O(n)
Longest Palindromic SubstringGoMediumO(n^2)O(n^2)
Perfect SquaresGoMediumO(n^2)O(n)
House RobberGoEasyO(n)O(1)
House Robber IIGoMediumO(n)O(1)
Paint FenceGoEasyO(n)O(n)
Maximum SubarrayGoMediumO(n)O(1)
Maximum Product SubarrayGoMediumO(n)O(1)
Maximal SquareGoMediumO(mn)O(mn)
Edit DistanceGoHardO(mn)O(mn)
Combination Sum IVGoMediumO(2^n)O(n)
TriangleGoMediumO(2^n - 1)O(m)
Guess Number Higher or Lower IIGoMediumO(nlogn)O(n^2)
Burst BallonsGoHardO(n^3)O(n)
Frog JumpGoHardO(n^2)O(n)
TitleSolutionDifficultyTimeSpace
PermutationsGoMediumO(n!)O(n)
Permutations IIGoMediumO(n!)O(n)
SubsetsGoMediumO(n!)O(n)
Subsets IIGoMediumO(n!)O(n)
CombinationsGoMediumO(n!)O(n)
Combination SumGoMediumO(n^n)O(2^n - 1)
Combination Sum IIGoMediumO(n!)O(2^n - 2)
Combination Sum IIIGoMediumO(n!)O(nCk)
Letter Combinations of a Phone NumberGoMediumO(mn)O(n)
Factor CombinationsGoMediumO(n^n))O(2^n - 1)
Generalized AbbreviationGoMediumO(n!)O(2^n)
Palindrome PartitioningGoMediumO(n!)O(n)
Number of IslandsGoMediumO((mn)^2)O(1)
Walls and GatesGoMediumO(n!)O(2^n)
Word SearchGoMediumO((n^2)!)O(n^2)
Word Search IIGoHardO(((mn)^2))O(n^2)
Add and Search Word - Data structure designGoMediumO(n)O(n)
N-QueensGoHardO((n^4))O(n^2)
N-Queens IIGoHardO((n^3))O(n)
Sudoku SolverGoHardO(n^4)O(1)
Remove Invalid ParenthesesGoHardO(n!)O(n)
Expression Add OperatorsGoHardO(n!)O(n)

Math

TitleSolutionDifficultyTimeSpace
Add BinaryGoEasyO(n)O(n)
Add Two NumbersGoMediumO(n)O(1)
Add DigitsGoEasyO(1)O(1)
Plus OneGoEasyO(n)O(1)
Divide Two IntegersGoMediumO(logn)O(1)
Number ComplementGoEasyO(n)O(1)
Hamming DistanceGoEasyO(n)O(1)
Integer BreakGoMediumO(logn)O(1)
Happy NumberGoEasyO(n)O(n)
Single NumberGoMediumO(n)O(1)
Ugly NumberGoEasyO(logn)O(1)
Ugly Number IIGoMediumO(n)O(n)
Super Ugly NumberGoMediumO(n^2)O(n)
Count PrimesGoEasyO(n)O(n)
String to Integer (atoi)GoEasyO(n)O(1)
Pow(x, n)GoMediumO(logn)O(1)
Power of TwoGoEasyO(1)O(1)
Power of ThreeGoEasyO(1)O(1)
Super PowerGoMediumO(n)O(1)
Sum of Two IntegersGoEasyO(n)O(1)
Reverse IntegerGoEasyO(n)O(1)
Excel Sheet Column NumberGoEasyO(n)O(1)
Integer to RomanGoMediumO(n)O(1)
Roman to IntegerGoEasyO(n)O(n)
Integer to English WordsGoHardO(n)O(1)
Rectangle AreaGoEasyO(1)O(1)
Trapping Rain WaterGoHardO(n)O(n)
Container With Most WaterGoMediumO(n)O(1)
Counting BitsGoMediumO(n)O(n)
K-th Smallest in Lexicographical OrderGoHardO(n)O(1)
TitleSolutionDifficultyTimeSpace
Closest Binary Search Tree ValueGoEasyO(logn)O(1)
Closest Binary Search Tree Value IIGoHardO(n)O(n)
Search in Rotated Sorted ArrayGoHardO(logn)O(1)
Search in Rotated Sorted Array IIGoMediumO(logn)O(1)
Find Minimum in Rotated Sorted ArrayGoMediumO(logn)O(1)
Find Minimum in Rotated Sorted Array IIGoHardO(logn)O(1)
Search a 2D MatrixGoMediumO(log(m + n))O(1)
Search a 2D Matrix IIGoMediumO(m + n)O(1)
Search for a RangeGoMediumO(logn)O(1)
Search Insert PositionGoMediumO(logn)O(1)
Find Peak ElementGoMediumO(logn)O(1)
Sqrt(x)GoMediumO(logn)O(1)
Median of Two Sorted ArraysGoHardO(log(m + n))O(1)

Sort (已全部做完)

  • 深刻的理解多路快排。第 75 题。
  • 链表的排序,插入排序(第 147 题)和归并排序(第 148 题)
  • 桶排序和基数排序。第 164 题。
  • "摆动排序"。第 324 题。
  • 两两不相邻的排序。第 767 题,第 1054 题。
  • "饼子排序"。第 969 题。
TitleSolutionDifficultyTimeSpace收藏
56. Merge IntervalsGoMediumO(n log n)O(log n)
57. Insert IntervalGoHardO(n)O(1)
75. Sort ColorsGoMediumO(n)O(1)❤️
147. Insertion Sort ListGoMediumO(n)O(1)❤️
148. Sort ListGoMediumO(n log n)O(log n)❤️
164. Maximum GapGoHardO(n log n)O(log n)❤️
179. Largest NumberGoMediumO(n log n)O(log n)❤️
220. Contains Duplicate IIIGoMediumO(n^2)O(1)
242. Valid AnagramGoEasyO(n)O(n)
274. H-IndexGoMediumO(n)O(n)
324. Wiggle Sort IIGoMediumO(n)O(n)❤️
349. Intersection of Two ArraysGoEasyO(n)O(n)
350. Intersection of Two Arrays IIGoEasyO(n)O(n)
524. Longest Word in Dictionary through DeletingGoMediumO(n)O(1)
767. Reorganize StringGoMediumO(n log n)O(log n)❤️
853. Car FleetGoMediumO(n log n)O(log n)
710. Random Pick with BlacklistGoHardO(n)O(n)
922. Sort Array By Parity IIGoEasyO(n)O(1)
969. Pancake SortingGoMediumO(n log n)O(log n)❤️
973. K Closest Points to OriginGoMediumO(n log n)O(log n)
976. Largest Perimeter TriangleGoEasyO(n log n)O(log n)
1030. Matrix Cells in Distance OrderGoEasyO(n^2)O(1)
1054. Distant BarcodesGoMediumO(n log n)O(log n)
------------------------------------------------------------------------------------------------------------------------------------------------------------

Union Find

TitleSolutionDifficultyTimeSpace
Number of Connected Components in an Undirected GraphGoMediumO(nlogn)O(n)
Graph Valid TreeGoMediumO(nlogn)O(n)

Google

TitleSolutionDifficultyFrequency
Plus OneGoEasy★★★★★★
Number of IslandsGoMedium★★★★
Summary RangesGoMedium★★★★
Perfect SquaresGoMedium★★★★
Merge IntervalsGoHard★★★
Valid ParenthesesGoEasy★★★
Trapping Rain WaterGoHard★★
Merge k Sorted ListsGoHard★★
Longest Consecutive SequenceGoHard★★
Find Peak ElementGoMedium★★
Power of TwoGoEasy★★
Spiral MatrixGoMedium★★
Sliding Window Maximum GoHard★★
Pow(x, n)GoMedium★★
Letter Combinations of a Phone NumberGoMedium★★
HeatersGoEasy

Facebook

TitleSolutionDifficultyFrequency
3SumGoMedium★★★★★★
Valid PalindromeGoEasy★★★★★★
Valid Palindrome IIGoEasy★★★★★★
Move ZeroesGoEasy★★★★★★
Remove Invalid ParenthesesGoHard★★★★★★
Add BinaryGoEasy★★★★★
Two SumGoEasy★★★★★
Bnary Tree PathsGoEasy★★★★
Letter Combinations of a Phone NumberGoMedium★★★★
Merge k Sorted ListsGoHard★★★★
Reverse Linked ListGoEasy★★★
Merge IntervalsGoHard★★★
Number of IslandsGoMedium★★★
Reverse Linked ListGoEasy★★★
Expression Add OperatorsGoHard★★★
SubsetsGoMedium★★★
Sort ColorsGoMedium★★

Snapchat

TitleSolutionDifficultyFrequency
Game of LifeGoMedium★★★★★★
Meeting Rooms IIGoMedium★★★★★★
Valid SudokuGoEasy★★★★★
Binary Tree Vertical Order TraversalGoMedium★★★★
Alien DictionaryGoHard★★★★
One Edit DistanceGoMedium★★★
Sudoku SolverGoHard★★★
Reverse Linked ListGoEasy★★
Unique Binary Search TreesGoMedium★★
Minimum Window SubstringGoHard★★
Remove K DigitsGoMedium
Ternary Expression ParserGoMedium

Uber

TitleSolutionDifficultyFrequency
Valid SudokuGoEasy★★★★
Spiral MatrixGoMedium★★★★
Letter Combinations of a Phone NumberGoMedium★★★★
Group AnagramsGoMedium★★★★
Word PatternGoEasy★★★
Roman to IntegerGoEasy★★★
Combination SumGoMedium★★

Airbnb

TitleSolutionDifficultyFrequency
Two SumGoEasy★★★★★
Text JustificationGoHard★★★★
House RobberGoEasy★★
Single NumberGoMedium★★
Word Search IIGoHard★★
Add Two NumbersGoMedium★★

LinkedIn

TitleSolutionDifficultyFrequency
Maximum SubarrayGoMedium★★★★★★
Pow(x, n)GoMedium★★★★★★
Merge IntervalsGoHard★★★★★★
Isomorphic StringsGoEasy★★★★★★
Search in Rotated Sorted ArrayGoHard★★★★★
Search for a RangeGoMedium★★★★★
Two SumGoEasy★★★★
Binary Tree Level Order TraversalGoEasy★★★★
Evaluate Reverse Polish NotationGoMedium★★★
Maximum Product SubarrayGoMedium★★★
Product of Array Except SelfGoMedium★★★
Symmetric TreeGoEasy★★

Amazon

TitleSolutionDifficultyFrequency
Two SumGoEasy★★★★★★
Min Cost Climbing StairsGoEasy★★★★
Number of IslandsGoMedium★★
Add Two NumbersGoMedium★★
Reverse Linked ListGoEasy★★
Valid ParenthesesGoEasy★★
Longest Palindromic SubstringGoMedium★★
Trapping Rain WaterGoHard★★
Longest Substring Without Repeating CharactersGoMedium★★
Letter Combinations of a Phone NumberGoMedium★★
Valid AnagramGoEasy★★
Rotate ImageGoMedium★★
Best Time to Buy and Sell StockGoEasy★★
3SumGoMedium★★
Sliding Window Maximum GoHard★★

Microsoft

TitleSolutionDifficultyFrequency
Reverse Linked ListGoEasy★★★★★★
Two SumGoEasy★★★★★
String to Integer (atoi)GoEasy★★★★
Add Two NumbersGoMedium★★★★
Excel Sheet Column NumberGoEasy★★★★
Validate Binary Search TreeGoMedium★★★
Merge Two Sorted ListsGoEasy★★★