Go 的数据结构和算法 , 以及一些在leetcode上的一些题目的解答集合.
数据结构:是相互之间存在-种或多种特定关系的数据元素的集合。按照视点的不同,我们把数据结构分为逻辑结构和物理结构。
- 逻辑结构
逻辑结构指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后关系,而与他们在计算机中的存储位置无关。
逻辑结构分为以下四类:
- 集合结构
集合结构中的数据元素同属于一个集合,他们之间是并列的关系,除此之外没有其他关系。
- 线性结构
线性结构中的元素存在一对一的相互关系。主要包括:数组,栈,队列,链表,哈希表.
- 树形结构
树形结构中的元素存在一对多的相互关系。主要包括:二叉树,二分搜索树,AVL,红黑树,Treap,Splay,堆,Trie,线段树,K-D树,并查集,哈夫曼树...
- 图形结构
图形结构中的元素存在多对多的相互关系。主要包括:邻接矩阵,邻接表.
- 物理结构
物理结构:是指数据的逻辑结构在计算机中的存储形式。物理结构又叫存储结构,指数据的逻辑结构在计算机存储空间的存放形式。通俗的讲,物理结构研究的是数据在存储器中存放的形式。
数据元素的存储结构形式有两种:顺序存储和链式存储。
- 顺序存储结构
顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关 系和物理关系是一致的.
这种存储结构其实很简单,说白了 , 就是排队占位。大家都按顺序排好,每个人 占一小段空间,大家谁也别插谁的队。 我们之前学计算机语言时,数组就是这样的顺 序存储结构。
- 链式存储结构
链式存储结构:是把数据元素存放在任意的存储单元里,这组存储单元可以是连 续的,也可以是不连续的.
数据元素的存储关系并不能反映其逻辑关系,因此需要用 一个指针存放数据元素的地址,这样通过地址就可以找到相关联数据元素的位置.
显然,链式存储就灵活多了,数据存在哪里不重要,只要有一个指针存放了相应的地址就能找到白了 。
数据结构类型:
跳跃表 (Skiplist)
增加了向前指针的链表叫作跳表。跳表全称叫做跳跃表,简称跳表。跳表是一个随机化的数据结构,实质就是一种可以进行二分查找的有序链表。
跳表在原有的有序链表上面增加了多级索引,通过索引来实现快速查找。跳表不仅能提高搜索性能,同时也可以提高插入和删除操作的性能。采用Redis底层类似的实现,在每层上增加了偏移量的记录,好处是在按排行取元素的时候可以先从上层按偏移量快速定位到目标位置,不需要在底层链表进行遍历定位。
# | Title | Solution | Acceptance | Difficulty | Frequency |
---|---|---|---|---|---|
0001 | Two Sum | Go | 44.30% | Easy | |
0002 | Add Two Numbers | Go | 31.30% | Medium | |
0003 | Longest Substring Without Repeating Characters | Go | 28.50% | Medium | |
0004 | Median of Two Sorted Arrays | 26.60% | Hard | ||
0005 | Longest Palindromic Substring | 27.50% | Medium | ||
0006 | ZigZag Conversion | 32.20% | Medium | ||
0007 | Reverse Integer | Go | 25.40% | Easy | |
0008 | String to Integer (atoi) | 14.70% | Medium | ||
0009 | Palindrome Number | 43.70% | Easy | ||
0010 | Regular Expression Matching | 25.40% | Hard | ||
0011 | Container With Most Water | Go | 45.10% | Medium | |
0012 | Integer to Roman | 51.30% | Medium | ||
0013 | Roman to Integer | 52.60% | Easy | ||
0014 | Longest Common Prefix | 33.70% | Easy | ||
0015 | 3Sum | Go | 24.20% | Medium | |
0016 | 3Sum Closest | Go | 45.80% | Medium | |
0017 | Letter Combinations of a Phone Number | Go | 41.90% | Medium | |
0018 | 4Sum | Go | 30.80% | Medium | |
0019 | Remove Nth Node From End of List | Go | 34.30% | Medium | |
0020 | Valid Parentheses | Go | 36.70% | Easy | |
0021 | Merge Two Sorted Lists | Go | 47.70% | Easy | |
0022 | Generate Parentheses | Go | 55.50% | Medium | |
0023 | Merge k Sorted Lists | Go | 34.90% | Hard | |
0024 | Swap Nodes in Pairs | Go | 45.10% | Medium | |
0025 | Reverse Nodes in k-Group | Go | 36.80% | Hard | |
0026 | Remove Duplicates from Sorted Array | Go | 41.00% | Easy | |
0027 | Remove Element | Go | 44.80% | Easy | |
0028 | Implement strStr() | Go | 32.20% | Easy | |
0029 | Divide Two Integers | Go | 16.10% | Medium | |
0030 | Substring with Concatenation of All Words | Go(是否还有更优解) | 23.70% | Hard | |
0031 | Next Permutation | 30.60% | Medium | ||
0032 | Longest Valid Parentheses | 25.70% | Hard | ||
0033 | Search in Rotated Sorted Array | Go | 33.00% | Medium | |
0034 | Find First and Last Position of Element in Sorted Array | Go | 33.70% | Medium | |
0035 | Search Insert Position | 40.90% | Easy | ||
0036 | Valid Sudoku | Go | 43.50% | Medium | |
0037 | Sudoku Solver | Go | 37.40% | Hard | |
0038 | Count and Say | 40.80% | Easy | ||
0039 | Combination Sum | Go | 49.10% | Medium | |
0040 | Combination Sum II | Go | 42.10% | Medium | |
0041 | First Missing Positive | Go | 29.10% | Hard | |
0042 | Trapping Rain Water | Go | 43.50% | Hard | |
0043 | Multiply Strings | 30.90% | Medium | ||
0044 | Wildcard Matching | 23.00% | Hard | ||
0045 | Jump Game II | 28.20% | Hard | ||
0046 | Permutations | Go | 55.70% | Medium | |
0047 | Permutations II | Go | 40.90% | Medium | |
0048 | Rotate Image | Go | 49.00% | Medium | |
0049 | Group Anagrams | Go | 47.40% | Medium | |
0050 | Pow(x, n) | Go | 28.10% | Medium | |
0051 | N-Queens | Go | 39.80% | Hard | |
0052 | N-Queens II | Go | 52.40% | Hard | |
0053 | Maximum Subarray | Go | 43.80% | Easy | |
0054 | Spiral Matrix | Go | 30.70% | Medium | |
0055 | Jump Game | 32.10% | Medium | ||
0056 | Merge Intervals | Go | 35.90% | Medium | |
0057 | Insert Interval | Go | 31.40% | Hard | |
0058 | Length of Last Word | 32.30% | Easy | ||
0059 | Spiral Matrix II | Go | 47.00% | Medium | |
0060 | Permutation Sequence | Go | 33.40% | Medium | |
0061 | Rotate List | Go | 27.30% | Medium | |
0062 | Unique Paths | Go | 48.00% | Medium | |
0063 | Unique Paths II | Go | 33.50% | Medium | |
0064 | Minimum Path Sum | Go | 47.30% | Medium | |
0065 | Valid Number | 14.10% | Hard | ||
0066 | Plus One | Go | 41.40% | Easy | |
0067 | Add Binary | 39.50% | Easy | ||
0068 | Text Justification | 23.50% | Hard | ||
0069 | Sqrt(x) | Go | 31.50% | Easy | |
0070 | Climbing Stairs | Go | 44.40% | Easy | |
0071 | Simplify Path | Go | 29.00% | Medium | |
0072 | Edit Distance | 38.20% | Hard | ||
0073 | Set Matrix Zeroes | 40.10% | Medium | ||
0074 | Search a 2D Matrix | 35.00% | Medium | ||
0075 | Sort Colors | Go | 42.40% | Medium | |
0076 | Minimum Window Substring | Go | 31.10% | Hard | |
0077 | Combinations | Go | 48.20% | Medium | |
0078 | Subsets | Go | 53.40% | Medium | |
0079 | Word Search | Go | 31.50% | Medium | |
0080 | Remove Duplicates from Sorted Array II | Go | 40.60% | Medium | |
0081 | Search in Rotated Sorted Array II | 32.70% | Medium | ||
0082 | Remove Duplicates from Sorted List II | Go | 33.30% | Medium | |
0083 | Remove Duplicates from Sorted List | Go | 42.80% | Easy | |
0084 | Largest Rectangle in Histogram | Go | 31.40% | Hard | |
0085 | Maximal Rectangle | 33.60% | Hard | ||
0086 | Partition List | Go | 37.60% | Medium | |
0087 | Scramble String | 31.70% | Hard | ||
0088 | Merge Sorted Array | Go | 36.00% | Easy | |
0089 | Gray Code | Go | 46.00% | Medium | |
0090 | Subsets II | Go | 42.70% | Medium | |
0091 | Decode Ways | Go | 22.50% | Medium | |
0092 | Reverse Linked List II | Go | 35.20% | Medium | |
0093 | Restore IP Addresses | Go | 31.70% | Medium | |
0094 | Binary Tree Inorder Traversal | Go | 57.10% | Medium | |
0095 | Unique Binary Search Trees II | Go | 36.00% | Medium | |
0096 | Unique Binary Search Trees | Go | 46.60% | Medium | |
0097 | Interleaving String | 28.20% | Hard | ||
0098 | Validate Binary Search Tree | Go | 25.90% | Medium | |
0099 | Recover Binary Search Tree | Go | 34.90% | Hard | |
0100 | Same Tree | Go | 50.20% | Easy | |
0101 | Symmetric Tree | Go | 43.70% | Easy | |
0102 | Binary Tree Level Order Traversal | Go | 48.90% | Medium | |
0103 | Binary Tree Zigzag Level Order Traversal | Go | 42.10% | Medium | |
0104 | Maximum Depth of Binary Tree | Go | 60.90% | Easy | |
0105 | Construct Binary Tree from Preorder and Inorder Traversal | 41.60% | Medium | ||
0106 | Construct Binary Tree from Inorder and Postorder Traversal | 39.70% | Medium | ||
0107 | Binary Tree Level Order Traversal II | Go | 47.20% | Easy | |
0108 | Convert Sorted Array to Binary Search Tree | Go | 51.20% | Easy | |
0109 | Convert Sorted List to Binary Search Tree | Go | 41.20% | Medium | |
0110 | Balanced Binary Tree | Go | 41.20% | Easy | |
0111 | Minimum Depth of Binary Tree | Go | 35.40% | Easy | |
0112 | Path Sum | Go | 38.00% | Easy | |
0113 | Path Sum II | Go | 41.00% | Medium | |
0114 | Flatten Binary Tree to Linked List | Go | 42.80% | Medium | |
0115 | Distinct Subsequences | 35.20% | Hard | ||
0116 | Populating Next Right Pointers in Each Node | 38.20% | Medium | ||
0117 | Populating Next Right Pointers in Each Node II | 34.70% | Medium | ||
0118 | Pascal's Triangle | 46.50% | Easy | ||
0119 | Pascal's Triangle II | 44.00% | Easy | ||
0120 | Triangle | Go | 39.70% | Medium | |
0121 | Best Time to Buy and Sell Stock | Go | 47.50% | Easy | |
0122 | Best Time to Buy and Sell Stock II | Go | 52.20% | Easy | |
0123 | Best Time to Buy and Sell Stock III | 33.90% | Hard | ||
0124 | Binary Tree Maximum Path Sum | Go | 30.20% | Hard | |
0125 | Valid Palindrome | Go | 31.40% | Easy | |
0126 | Word Ladder II | Go | 18.00% | Hard | |
0127 | Word Ladder | Go | 24.40% | Medium | |
0128 | Longest Consecutive Sequence | Go | 41.90% | Hard | |
0129 | Sum Root to Leaf Numbers | Go | 42.80% | Medium | |
0130 | Surrounded Regions | Go | 23.10% | Medium | |
0131 | Palindrome Partitioning | Go | 41.30% | Medium | |
0132 | Palindrome Partitioning II | 27.60% | Hard | ||
0133 | Clone Graph | 27.00% | Medium | ||
0134 | Gas Station | 34.10% | Medium | ||
0135 | Candy | 28.60% | Hard | ||
0136 | Single Number | Go | 60.50% | Easy | |
0137 | Single Number II | Go | 46.20% | Medium | |
0138 | Copy List with Random Pointer | 27.50% | Medium | ||
0139 | Word Break | 35.60% | Medium | ||
0140 | Word Break II | 27.50% | Hard | ||
0141 | Linked List Cycle | Go | 37.20% | Easy | |
0142 | Linked List Cycle II | Go | 32.40% | Medium | |
0143 | Reorder List | Go | 31.20% | Medium | |
0144 | Binary Tree Preorder Traversal | Go | 51.70% | Medium | |
0145 | Binary Tree Postorder Traversal | Go | 48.90% | Hard | |
0146 | LRU Cache | 25.90% | Medium | ||
0147 | Insertion Sort List | Go | 37.60% | Medium | |
0148 | Sort List | Go | 35.80% | Medium | |
0149 | Max Points on a Line | 15.80% | Hard | ||
0150 | Evaluate Reverse Polish Notation | Go | 32.50% | Medium | |
0151 | Reverse Words in a String | 17.00% | Medium | ||
0152 | Maximum Product Subarray | Go | 29.40% | Medium | |
0153 | Find Minimum in Rotated Sorted Array | 43.10% | Medium | ||
0154 | Find Minimum in Rotated Sorted Array II | 39.40% | Hard | ||
0155 | Min Stack | Go | 37.50% | Easy | |
0156 | Binary Tree Upside Down | 51.10% | Medium | ||
0157 | Read N Characters Given Read4 | 29.70% | Easy | ||
0158 | Read N Characters Given Read4 II - Call multiple times | 26.60% | Hard | ||
0159 | Longest Substring with At Most Two Distinct Characters | 47.20% | Hard | ||
0160 | Intersection of Two Linked Lists | Go | 34.30% | Easy | |
0161 | One Edit Distance | 31.70% | Medium | ||
0162 | Find Peak Element | 41.40% | Medium | ||
0163 | Missing Ranges | 23.30% | Medium | ||
0164 | Maximum Gap | Go | 32.70% | Hard | |
0165 | Compare Version Numbers | 23.80% | Medium | ||
0166 | Fraction to Recurring Decimal | 19.60% | Medium | ||
0167 | Two Sum II - Input array is sorted | Go | 50.60% | Easy | |
0168 | Excel Sheet Column Title | 29.10% | Easy | ||
0169 | Majority Element | Go | 53.00% | Easy | |
0170 | Two Sum III - Data structure design | 30.60% | Easy | ||
0171 | Excel Sheet Column Number | 51.70% | Easy | ||
0172 | Factorial Trailing Zeroes | 37.40% | Easy | ||
0173 | Binary Search Tree Iterator | Go | 49.00% | Medium | |
0174 | Dungeon Game | 27.30% | Hard | ||
0175 | Combine Two Tables | 52.40% | Easy | ||
0176 | Second Highest Salary | 27.50% | Easy | ||
0177 | Nth Highest Salary | 26.60% | Medium | ||
0178 | Rank Scores | 37.10% | Medium | ||
0179 | Largest Number | Go | 26.00% | Medium | |
0180 | Consecutive Numbers | 34.00% | Medium | ||
0181 | Employees Earning More Than Their Managers | 48.90% | Easy | ||
0182 | Duplicate Emails | 55.20% | Easy | ||
0183 | Customers Who Never Order | 45.40% | Easy | ||
0184 | Department Highest Salary | 29.40% | Medium | ||
0185 | Department Top Three Salaries | 26.50% | Hard | ||
0186 | Reverse Words in a String II | 38.10% | Medium | ||
0187 | Repeated DNA Sequences | Go | 36.30% | Medium | |
0188 | Best Time to Buy and Sell Stock IV | 26.40% | Hard | ||
0189 | Rotate Array | 30.50% | Easy | ||
0190 | Reverse Bits | Go | 31.70% | Easy | |
0191 | Number of 1 Bits | Go | 43.60% | Easy | |
0192 | Word Frequency | 26.80% | Medium | ||
0193 | Valid Phone Numbers | 25.20% | Easy | ||
0194 | Transpose File | 22.90% | Medium | ||
0195 | Tenth Line | 33.90% | Easy | ||
0196 | Delete Duplicate Emails | 33.40% | Easy | ||
0197 | Rising Temperature | 35.10% | Easy | ||
0198 | House Robber | Go | 41.10% | Easy | |
0199 | Binary Tree Right Side View | Go | 48.30% | Medium | |
0200 | Number of Islands | Go | 41.90% | Medium | |
0201 | Bitwise AND of Numbers Range | Go | 36.10% | Medium | |
0202 | Happy Number | Go | 45.60% | Easy | |
0203 | Remove Linked List Elements | Go | 35.90% | Easy | |
0204 | Count Primes | Go | 29.20% | Easy | |
0205 | Isomorphic Strings | Go | 37.60% | Easy | |
0206 | Reverse Linked List | Go | 55.30% | Easy | |
0207 | Course Schedule | Go | 38.20% | Medium | |
0208 | Implement Trie (Prefix Tree) | Go | 39.00% | Medium | |
0209 | Minimum Size Subarray Sum | Go | 35.10% | Medium | |
0210 | Course Schedule II | Go | 35.20% | Medium | |
0211 | Add and Search Word - Data structure design | Go | 30.70% | Medium | |
0212 | Word Search II | Go | 29.00% | Hard | |
0213 | House Robber II | Go | 35.40% | Medium | |
0214 | Shortest Palindrome | 27.70% | Hard | ||
0215 | Kth Largest Element in an Array | Go | 48.30% | Medium | |
0216 | Combination Sum III | Go | 51.90% | Medium | |
0217 | Contains Duplicate | Go | 52.30% | Easy | |
0218 | The Skyline Problem | Go | 31.80% | Hard | |
0219 | Contains Duplicate II | Go | 35.50% | Easy | |
0220 | Contains Duplicate III | Go | 19.80% | Medium | |
0221 | Maximal Square | 33.30% | Medium | ||
0222 | Count Complete Tree Nodes | Go | 34.40% | Medium | |
0223 | Rectangle Area | 36.00% | Medium | ||
0224 | Basic Calculator | Go | 33.00% | Hard | |
0225 | Implement Stack using Queues | Go | 39.60% | Easy | |
0226 | Invert Binary Tree | Go | 58.50% | Easy | |
0227 | Basic Calculator II | 33.70% | Medium | ||
0228 | Summary Ranges | 36.20% | Medium | ||
0229 | Majority Element II | Go | 32.30% | Medium | |
0230 | Kth Smallest Element in a BST | Go | 51.90% | Medium | |
0231 | Power of Two | Go | 42.10% | Easy | |
0232 | Implement Queue using Stacks | Go | 43.70% | Easy | |
0233 | Number of Digit One | 30.30% | Hard | ||
0234 | Palindrome Linked List | Go | 36.30% | Easy | |
0235 | Lowest Common Ancestor of a Binary Search Tree | Go | 45.10% | Easy | |
0236 | Lowest Common Ancestor of a Binary Tree | Go | 37.90% | Medium | |
0237 | Delete Node in a Linked List | Go | 54.00% | Easy | |
0238 | Product of Array Except Self | 55.40% | Medium | ||
0239 | Sliding Window Maximum | Go | 38.40% | Hard | |
0240 | Search a 2D Matrix II | 41.00% | Medium | ||
0241 | Different Ways to Add Parentheses | 50.30% | Medium | ||
0242 | Valid Anagram | Go | 52.50% | Easy | |
0243 | Shortest Word Distance | 57.60% | Easy | ||
0244 | Shortest Word Distance II | 47.60% | Medium | ||
0245 | Shortest Word Distance III | 53.60% | Medium | ||
0246 | Strobogrammatic Number | 42.40% | Easy | ||
0247 | Strobogrammatic Number II | 44.60% | Medium | ||
0248 | Strobogrammatic Number III | 36.70% | Hard | ||
0249 | Group Shifted Strings | 49.10% | Medium | ||
0250 | Count Univalue Subtrees | 49.10% | Medium | ||
0251 | Flatten 2D Vector | 43.90% | Medium | ||
0252 | Meeting Rooms | 52.30% | Easy | ||
0253 | Meeting Rooms II | 43.10% | Medium | ||
0254 | Factor Combinations | 44.50% | Medium | ||
0255 | Verify Preorder Sequence in Binary Search Tree | 43.70% | Medium | ||
0256 | Paint House | 49.10% | Easy | ||
0257 | Binary Tree Paths | Go | 46.30% | Easy | |
0258 | Add Digits | 54.30% | Easy | ||
0259 | 3Sum Smaller | 45.10% | Medium | ||
0260 | Single Number III | Go | 57.30% | Medium | |
0261 | Graph Valid Tree | 40.00% | Medium | ||
0262 | Trips and Users | 25.40% | Hard | ||
0263 | Ugly Number | Go | 40.70% | Easy | |
0264 | Ugly Number II | 36.60% | Medium | ||
0265 | Paint House II | 41.70% | Hard | ||
0266 | Palindrome Permutation | 60.20% | Easy | ||
0267 | Palindrome Permutation II | 33.90% | Medium | ||
0268 | Missing Number | Go | 48.60% | Easy | |
0269 | Alien Dictionary | 31.30% | Hard | ||
0270 | Closest Binary Search Tree Value | 44.00% | Easy | ||
0271 | Encode and Decode Strings | 27.00% | Medium | ||
0272 | Closest Binary Search Tree Value II | 45.40% | Hard | ||
0273 | Integer to English Words | 24.50% | Hard | ||
0274 | H-Index | Go | 34.70% | Medium | |
0275 | H-Index II | 35.50% | Medium | ||
0276 | Paint Fence | 36.60% | Easy | ||
0277 | Find the Celebrity | 37.10% | Medium | ||
0278 | First Bad Version | 30.30% | Easy | ||
0279 | Perfect Squares | 42.30% | Medium | ||
0280 | Wiggle Sort | 61.20% | Medium | ||
0281 | Zigzag Iterator | 56.10% | Medium | ||
0282 | Expression Add Operators | 32.90% | Hard | ||
0283 | Move Zeroes | Go | 54.50% | Easy | |
0284 | Peeking Iterator | 40.90% | Medium | ||
0285 | Inorder Successor in BST | 35.10% | Medium | ||
0286 | Walls and Gates | 49.80% | Medium | ||
0287 | Find the Duplicate Number | Go | 50.00% | Medium | |
0288 | Unique Word Abbreviation | 20.10% | Medium | ||
0289 | Game of Life | 45.90% | Medium | ||
0290 | Word Pattern | Go | 35.20% | Easy | |
0291 | Word Pattern II | 41.10% | Hard | ||
0292 | Nim Game | 55.70% | Easy | ||
0293 | Flip Game | 59.00% | Easy | ||
0294 | Flip Game II | 48.40% | Medium | ||
0295 | Find Median from Data Stream | 37.10% | Hard | ||
0296 | Best Meeting Point | 55.00% | Hard | ||
0297 | Serialize and Deserialize Binary Tree | 41.30% | Hard | ||
0298 | Binary Tree Longest Consecutive Sequence | 44.20% | Medium | ||
0299 | Bulls and Cows | 39.70% | Medium | ||
0300 | Longest Increasing Subsequence | Go | 41.00% | Medium | |
0301 | Remove Invalid Parentheses | 39.50% | Hard | ||
0302 | Smallest Rectangle Enclosing Black Pixels | 49.40% | Hard | ||
0303 | Range Sum Query - Immutable | Go | 38.40% | Easy | |
0304 | Range Sum Query 2D - Immutable | 32.70% | Medium | ||
0305 | Number of Islands II | 41.70% | Hard | ||
0306 | Additive Number | Go | 28.40% | Medium | |
0307 | Range Sum Query - Mutable | Go | 29.00% | Medium | |
0308 | Range Sum Query 2D - Mutable | 32.20% | Hard | ||
0309 | Best Time to Buy and Sell Stock with Cooldown | Go | 44.20% | Medium | |
0310 | Minimum Height Trees | 30.30% | Medium | ||
0311 | Sparse Matrix Multiplication | 56.70% | Medium | ||
0312 | Burst Balloons | 47.50% | Hard | ||
0313 | Super Ugly Number | 41.70% | Medium | ||
0314 | Binary Tree Vertical Order Traversal | 41.20% | Medium | ||
0315 | Count of Smaller Numbers After Self | Go | 38.40% | Hard | |
0316 | Remove Duplicate Letters | 32.80% | Hard | ||
0317 | Shortest Distance from All Buildings | 38.10% | Hard | ||
0318 | Maximum Product of Word Lengths | Go | 48.70% | Medium | |
0319 | Bulb Switcher | 44.00% | Medium | ||
0320 | Generalized Abbreviation | 48.90% | Medium | ||
0321 | Create Maximum Number | 25.50% | Hard | ||
0322 | Coin Change | Go | 30.80% | Medium | |
0323 | Number of Connected Components in an Undirected Graph | 52.30% | Medium | ||
0324 | Wiggle Sort II | Go | 28.10% | Medium | |
0325 | Maximum Size Subarray Sum Equals k | 44.80% | Medium | ||
0326 | Power of Three | Go | 41.70% | Easy | |
0327 | Count of Range Sum | Go | 32.90% | Hard | |
0328 | Odd Even Linked List | Go | 49.50% | Medium | |
0329 | Longest Increasing Path in a Matrix | 40.30% | Hard | ||
0330 | Patching Array | 33.40% | Hard | ||
0331 | Verify Preorder Serialization of a Binary Tree | Go | 38.80% | Medium | |
0332 | Reconstruct Itinerary | 31.70% | Medium | ||
0333 | Largest BST Subtree | 33.20% | Medium | ||
0334 | Increasing Triplet Subsequence | 39.60% | Medium | ||
0335 | Self Crossing | 27.00% | Hard | ||
0336 | Palindrome Pairs | 31.10% | Hard | ||
0337 | House Robber III | 48.30% | Medium | ||
0338 | Counting Bits | Go | 64.90% | Medium | |
0339 | Nested List Weight Sum | 68.50% | Easy | ||
0340 | Longest Substring with At Most K Distinct Characters | 40.00% | Hard | ||
0341 | Flatten Nested List Iterator | 48.20% | Medium | ||
0342 | Power of Four | Go | 40.40% | Easy | |
0343 | Integer Break | Go | 48.00% | Medium | |
0344 | Reverse String | Go | 63.50% | Easy | |
0345 | Reverse Vowels of a String | Go | 41.70% | Easy | |
0346 | Moving Average from Data Stream | 66.50% | Easy | ||
0347 | Top K Frequent Elements | Go | 55.30% | Medium | |
0348 | Design Tic-Tac-Toe | 50.00% | Medium | ||
0349 | Intersection of Two Arrays | Go | 55.10% | Easy | |
0350 | Intersection of Two Arrays II | Go | 48.10% | Easy | |
0351 | Android Unlock Patterns | 46.00% | Medium | ||
0352 | Data Stream as Disjoint Intervals | 43.70% | Hard | ||
0353 | Design Snake Game | 30.80% | Medium | ||
0354 | Russian Doll Envelopes | 34.10% | Hard | ||
0355 | Design Twitter | 27.50% | Medium | ||
0356 | Line Reflection | 30.90% | Medium | ||
0357 | Count Numbers with Unique Digits | Go | 47.10% | Medium | |
0358 | Rearrange String k Distance Apart | 32.90% | Hard | ||
0359 | Logger Rate Limiter | 65.40% | Easy | ||
0360 | Sort Transformed Array | 46.90% | Medium | ||
0361 | Bomb Enemy | 43.60% | Medium | ||
0362 | Design Hit Counter | 59.20% | Medium | ||
0363 | Max Sum of Rectangle No Larger Than K | 35.30% | Hard | ||
0364 | Nested List Weight Sum II | 58.00% | Medium | ||
0365 | Water and Jug Problem | 29.00% | Medium | ||
0366 | Find Leaves of Binary Tree | 66.00% | Medium | ||
0367 | Valid Perfect Square | 40.00% | Easy | ||
0368 | Largest Divisible Subset | 34.90% | Medium | ||
0369 | Plus One Linked List | 56.40% | Medium | ||
0370 | Range Addition | 60.60% | Medium | ||
0371 | Sum of Two Integers | Go | 50.90% | Easy | |
0372 | Super Pow | Go | 35.70% | Medium | |
0373 | Find K Pairs with Smallest Sums | 34.00% | Medium | ||
0374 | Guess Number Higher or Lower | 39.60% | Easy | ||
0375 | Guess Number Higher or Lower II | 37.80% | Medium | ||
0376 | Wiggle Subsequence | 37.60% | Medium | ||
0377 | Combination Sum IV | 43.70% | Medium | ||
0378 | Kth Smallest Element in a Sorted Matrix | 49.70% | Medium | ||
0379 | Design Phone Directory | 41.70% | Medium | ||
0380 | Insert Delete GetRandom O(1) | 43.00% | Medium | ||
0381 | Insert Delete GetRandom O(1) - Duplicates allowed | 32.10% | Hard | ||
0382 | Linked List Random Node | 49.40% | Medium | ||
0383 | Ransom Note | 50.10% | Easy | ||
0384 | Shuffle an Array | 50.30% | Medium | ||
0385 | Mini Parser | Go | 31.90% | Medium | |
0386 | Lexicographical Numbers | 46.50% | Medium | ||
0387 | First Unique Character in a String | Go | 50.20% | Easy | |
0388 | Longest Absolute File Path | 39.30% | Medium | ||
0389 | Find the Difference | Go | 53.20% | Easy | |
0390 | Elimination Game | 43.40% | Medium | ||
0391 | Perfect Rectangle | 28.30% | Hard | ||
0392 | Is Subsequence | Go | 46.90% | Medium | |
0393 | UTF-8 Validation | Go | 36.00% | Medium | |
0394 | Decode String | Go | 45.20% | Medium | |
0395 | Longest Substring with At Least K Repeating Characters | 38.80% | Medium | ||
0396 | Rotate Function | 35.20% | Medium | ||
0397 | Integer Replacement | Go | 31.50% | Medium | |
0398 | Random Pick Index | 50.20% | Medium | ||
0399 | Evaluate Division | Go | 47.80% | Medium | |
0400 | Nth Digit | 30.40% | Easy | ||
0401 | Binary Watch | Go | 45.40% | Easy | |
0402 | Remove K Digits | Go | 26.70% | Medium | |
0403 | Frog Jump | 36.40% | Hard | ||
0404 | Sum of Left Leaves | Go | 49.20% | Easy | |
0405 | Convert a Number to Hexadecimal | Go | 42.00% | Easy | |
0406 | Queue Reconstruction by Height | 60.10% | Medium | ||
0407 | Trapping Rain Water II | 39.40% | Hard | ||
0408 | Valid Word Abbreviation | 29.60% | Easy | ||
0409 | Longest Palindrome | Go | 48.20% | Easy | |
0410 | Split Array Largest Sum | 42.60% | Hard | ||
0411 | Minimum Unique Word Abbreviation | 35.10% | Hard | ||
0412 | Fizz Buzz | Go | 59.70% | Easy | |
0413 | Arithmetic Slices | 56.00% | Medium | ||
0414 | Third Maximum Number | ||||
Go | 29.10% | Easy | |||
0415 | Add Strings | 43.90% | Easy | ||
0416 | Partition Equal Subset Sum | Go | 40.90% | Medium | |
0417 | Pacific Atlantic Water Flow | 37.60% | Medium | ||
0418 | Sentence Screen Fitting | 31.20% | Medium | ||
0419 | Battleships in a Board | 65.90% | Medium | ||
0420 | Strong Password Checker | 17.20% | Hard | ||
0421 | Maximum XOR of Two Numbers in an Array | Go | 51.20% | Medium | |
0422 | Valid Word Square | 36.60% | Easy | ||
0423 | Reconstruct Original Digits from English | 45.70% | Medium | ||
0424 | Longest Repeating Character Replacement | Go | 44.30% | Medium | |
0425 | Word Squares | 44.50% | Hard | ||
0426 | Convert Binary Search Tree to Sorted Doubly Linked List | 52.50% | Medium | ||
0427 | Construct Quad Tree | 57.20% | Medium | ||
0428 | Serialize and Deserialize N-ary Tree | 54.20% | Hard | ||
0429 | N-ary Tree Level Order Traversal | 59.80% | Easy | ||
0430 | Flatten a Multilevel Doubly Linked List | 42.60% | Medium | ||
0431 | Encode N-ary Tree to Binary Tree | 64.20% | Hard | ||
0432 | All O`one Data Structure | 29.70% | Hard | ||
0433 | Minimum Genetic Mutation | Go | 38.40% | Medium | |
0434 | Number of Segments in a String | 37.00% | Easy | ||
0435 | Non-overlapping Intervals | Go | 41.60% | Medium | |
0436 | Find Right Interval | 42.90% | Medium | ||
0437 | Path Sum III | Go | 43.00% | Easy | |
0438 | Find All Anagrams in a String | Go | 37.50% | Easy | |
0439 | Ternary Expression Parser | 53.70% | Medium | ||
0440 | K-th Smallest in Lexicographical Order | 26.60% | Hard | ||
0441 | Arranging Coins | Go | 38.10% | Easy | |
0442 | Find All Duplicates in an Array | 61.30% | Medium | ||
0443 | String Compression | 37.90% | Easy | ||
0444 | Sequence Reconstruction | 20.50% | Medium | ||
0445 | Add Two Numbers II | Go | 50.40% | Medium | |
0446 | Arithmetic Slices II - Subsequence | 30.30% | Hard | ||
0447 | Number of Boomerangs | Go | 50.00% | Easy | |
0448 | Find All Numbers Disappeared in an Array | 53.60% | Easy | ||
0449 | Serialize and Deserialize BST | 47.50% | Medium | ||
0450 | Delete Node in a BST | 40.20% | Medium | ||
0451 | Sort Characters By Frequency | Go | 56.40% | Medium | |
0452 | Minimum Number of Arrows to Burst Balloons | 46.60% | Medium | ||
0453 | Minimum Moves to Equal Array Elements | 49.30% | Easy | ||
0454 | 4Sum II | Go | 50.80% | Medium | |
0455 | Assign Cookies | Go | 48.50% | Easy | |
0456 | 132 Pattern | Go | 27.40% | Medium | |
0457 | Circular Array Loop | Go | 27.70% | Medium | |
0458 | Poor Pigs | 45.50% | Hard | ||
0459 | Repeated Substring Pattern | 40.00% | Easy | ||
0460 | LFU Cache | 29.00% | Hard | ||
0461 | Hamming Distance | Go | 70.40% | Easy | |
0462 | Minimum Moves to Equal Array Elements II | 52.50% | Medium | ||
0463 | Island Perimeter | Go | 61.20% | Easy | |
0464 | Can I Win | 27.30% | Medium | ||
0465 | Optimal Account Balancing | 42.90% | Hard | ||
0466 | Count The Repetitions | 27.30% | Hard | ||
0467 | Unique Substrings in Wraparound String | 34.10% | Medium | ||
0468 | Validate IP Address | 21.40% | Medium | ||
0469 | Convex Polygon | 35.50% | Medium | ||
0470 | Implement Rand10() Using Rand7() | Go | 45.10% | Medium | |
0471 | Encode String with Shortest Length | 45.20% | Hard | ||
0472 | Concatenated Words | 35.10% | Hard | ||
0473 | Matchsticks to Square | 36.00% | Medium | ||
0474 | Ones and Zeroes | Go | 39.80% | Medium | |
0475 | Heaters | 31.90% | Easy | ||
0476 | Number Complement | Go | 62.50% | Easy | |
0477 | Total Hamming Distance | Go | 49.00% | Medium | |
0478 | Generate Random Point in a Circle | 36.90% | Medium | ||
0479 | Largest Palindrome Product | 27.50% | Hard | ||
0480 | Sliding Window Median | Go | 32.80% | Hard | |
0481 | Magical String | 46.30% | Medium | ||
0482 | License Key Formatting | 41.10% | Easy | ||
0483 | Smallest Good Base | 34.20% | Hard | ||
0484 | Find Permutation | 57.80% | Medium | ||
0485 | Max Consecutive Ones | 55.10% | Easy | ||
0486 | Predict the Winner | 46.80% | Medium | ||
0487 | Max Consecutive Ones II | 46.70% | Medium | ||
0488 | Zuma Game | 39.10% | Hard | ||
0489 | Robot Room Cleaner | 64.70% | Hard | ||
0490 | The Maze | 47.60% | Medium | ||
0491 | Increasing Subsequences | Go | 42.20% | Medium | |
0492 | Construct the Rectangle | 48.80% | Easy | ||
0493 | Reverse Pairs | Go | 23.30% | Hard | |
0494 | Target Sum | 45.40% | Medium | ||
0495 | Teemo Attacking | 52.30% | Medium | ||
0496 | Next Greater Element I | Go | 59.80% | Easy | |
0497 | Random Point in Non-overlapping Rectangles | 35.90% | Medium | ||
0498 | Diagonal Traverse | Go | 45.40% | Medium | |
0499 | The Maze III | 37.40% | Hard | ||
0500 | Keyboard Row | Go | 62.40% | Easy | |
0501 | Find Mode in Binary Search Tree | 39.60% | Easy | ||
0502 | IPO | 38.00% | Hard | ||
0503 | Next Greater Element II | Go | 51.30% | Medium | |
0504 | Base 7 | 45.00% | Easy | ||
0505 | The Maze II | 44.10% | Medium | ||
0506 | Relative Ranks | 48.40% | Easy | ||
0507 | Perfect Number | 34.40% | Easy | ||
0508 | Most Frequent Subtree Sum | Go | 54.80% | Medium | |
0509 | Fibonacci Number | Go | 66.70% | Easy | |
0510 | Inorder Successor in BST II | 53.30% | Medium | ||
0511 | Game Play Analysis I | 74.40% | Easy | ||
0512 | Game Play Analysis II | 56.80% | Easy | ||
0513 | Find Bottom Left Tree Value | 58.60% | Medium | ||
0514 | Freedom Trail | 40.70% | Hard | ||
0515 | Find Largest Value in Each Tree Row | Go | 58.00% | Medium | |
0516 | Longest Palindromic Subsequence | 47.10% | Medium | ||
0517 | Super Washing Machines | 37.00% | Hard | ||
0518 | Coin Change 2 | 43.10% | Medium | ||
0519 | Random Flip Matrix | 33.00% | Medium | ||
0520 | Detect Capital | 52.60% | Easy | ||
0521 | Longest Uncommon Subsequence I | 56.50% | Easy | ||
0522 | Longest Uncommon Subsequence II | 32.90% | Medium | ||
0523 | Continuous Subarray Sum | 24.20% | Medium | ||
0524 | Longest Word in Dictionary through Deleting | Go | 46.00% | Medium | |
0525 | Contiguous Array | 42.80% | Medium | ||
0526 | Beautiful Arrangement | Go | 54.80% | Medium | |
0527 | Word Abbreviation | 50.20% | Hard | ||
0528 | Random Pick with Weight | 42.80% | Medium | ||
0529 | Minesweeper | 53.10% | Medium | ||
0530 | Minimum Absolute Difference in BST | 50.70% | Easy | ||
0531 | Lonely Pixel I | 57.60% | Medium | ||
0532 | K-diff Pairs in an Array | Go | 30.00% | Easy | |
0533 | Lonely Pixel II | 46.20% | Medium | ||
0534 | Game Play Analysis III | 64.60% | Medium | ||
0535 | Encode and Decode TinyURL | 76.90% | Medium | ||
0536 | Construct Binary Tree from String | 45.20% | Medium | ||
0537 | Complex Number Multiplication | 65.70% | Medium | ||
0538 | Convert BST to Greater Tree | 51.30% | Easy | ||
0539 | Minimum Time Difference | 48.10% | Medium | ||
0540 | Single Element in a Sorted Array | 57.40% | Medium | ||
0541 | Reverse String II | Go | 45.70% | Easy | |
0542 | 01 Matrix | Go | 36.00% | Medium | |
0543 | Diameter of Binary Tree | 46.90% | Easy | ||
0544 | Output Contest Matches | 73.50% | Medium | ||
0545 | B |