`** (e.g. `java/0001-two-sum.java`)
- Make sure the `problem-number` is formatted as four digits adding leading zeroes if necessary
- You can find the `name-of-problem` in the leetcode URL, e.g https://leetcode.com/problems/ _**two-sum**_ /
-- **Give your PR a succinct and accurate title** (e.g. _"Create: 1-Two-Sum.py"_)
+- **Give your PR a succinct and accurate title** (e.g. _"Create: 0001-two-sum.py"_)
- Prefer **one solution/change per PR** (not a hard and fast rule, but will typically make the review cycle shorter)
- **Follow the** [PR template](./.github/pull_request_template.md) and add additional information when needed
- **Make sure your code passes** submission on [leetcode.com](https://leetcode.com) for the problem it solves
diff --git a/Neetcode-update.iml b/Neetcode-update.iml
new file mode 100644
index 000000000..908ad4f52
--- /dev/null
+++ b/Neetcode-update.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/README.md b/README.md
index 46b10e44d..621435471 100644
--- a/README.md
+++ b/README.md
@@ -26,412 +26,548 @@ If you would like to have collaborator permissions on the repo to merge your own
### Arrays & Hashing
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0217 - Contains Duplicate](https://leetcode.com/problems/contains-duplicate/) | [✔️](c%2F0217-contains-duplicate.c)
| [✔️](cpp%2F0217-contains-duplicate.cpp)
| [✔️](csharp%2F0217-contains-duplicate.cs)
| [✔️](dart%2F0217-contains-duplicate.dart)
| [✔️](go%2F0217-contains-duplicate.go)
| [✔️](java%2F0217-contains-duplicate.java)
| [✔️](javascript%2F0217-contains-duplicate.js)
| [✔️](kotlin%2F0217-contains-duplicate.kt)
| [✔️](python%2F0217-contains-duplicate.py)
| [✔️](ruby%2F0217-contains-duplicate.rb)
| [✔️](rust%2F0217-contains-duplicate.rs)
| [✔️](scala%2F0217-contains-duplicate.scala)
| [✔️](swift%2F0217-contains-duplicate.swift)
| [✔️](typescript%2F0217-contains-duplicate.ts)
-[0242 - Valid Anagram](https://leetcode.com/problems/valid-anagram/) | [✔️](c%2F0242-valid-anagram.c)
| [✔️](cpp%2F0242-valid-anagram.cpp)
| [✔️](csharp%2F0242-valid-anagram.cs)
| [✔️](dart%2F0242-valid-anagram.dart)
| [✔️](go%2F0242-valid-anagram.go)
| [✔️](java%2F0242-valid-anagram.java)
| [✔️](javascript%2F0242-valid-anagram.js)
| [✔️](kotlin%2F0242-valid-anagram.kt)
| [✔️](python%2F0242-valid-anagram.py)
| [✔️](ruby%2F0242-valid-anagram.rb)
| [✔️](rust%2F0242-valid-anagram.rs)
| [✔️](scala%2F0242-valid-anagram.scala)
| [✔️](swift%2F0242-valid-anagram.swift)
| [✔️](typescript%2F0242-valid-anagram.ts)
-[1299 - Replace Elements With Greatest Element On Right Side](https://leetcode.com/problems/replace-elements-with-greatest-element-on-right-side/) | [✔️](c%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.c)
| [✔️](cpp%2F1299-Replace-Elements-with-Greatest-Element-on-Right-Side.cpp)
| [✔️](csharp%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.cs)
| [✔️](dart%2F1299-replace-elements-with-greatest-element-on-right-side.dart)
| [✔️](go%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.go)
| [✔️](java%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.java)
| [✔️](javascript%2F1299-Replace-Elements-with-Greatest-Element-on-Right-Side.js)
| [✔️](kotlin%2F1299-replace-elements-with-greatest-element-on-right-side.kt)
| [✔️](python%2F1299-replace-elements-with-greatest-element-on-right-side.py)
| ❌
| [✔️](rust%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.rs)
| ❌
| ❌
| [✔️](typescript%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.ts)
-[0392 - Is Subsequence](https://leetcode.com/problems/is-subsequence/) | [✔️](c%2F0392-is-subsequence.c)
| [✔️](cpp%2F0392-is-subsequence.cpp)
| [✔️](csharp%2F0392-is-subsequence.cs)
| [✔️](dart%2F0392-is-subsequence.dart)
| [✔️](go%2F0392-is-subsequence.go)
| [✔️](java%2F0392-is-subsequence.java)
| [✔️](javascript%2F0392-is-subsequence.js)
| [✔️](kotlin%2F0392-is-subsequence.kt)
| [✔️](python%2F0392-is-subsequence.py)
| ❌
| [✔️](rust%2F0392-is-subsequence.rs)
| ❌
| [✔️](swift%2F0392-is-subsequence.swift)
| [✔️](typescript%2F0392-is-subsequence.ts)
-[0058 - Length of Last Word](https://leetcode.com/problems/length-of-last-word/) | [✔️](c%2F0058-length-of-last-word.c)
| [✔️](cpp%2F0058-length-of-last-word.cpp)
| [✔️](csharp%2F0058-length-of-last-word.cs)
| [✔️](dart%2F0058-length-of-last-word.dart)
| [✔️](go%2F0058-Length-of-Last-Word.go)
| [✔️](java%2F0058-length-of-last-word.java)
| [✔️](javascript%2F0058-length-of-last-word.js)
| [✔️](kotlin%2F0058-length-of-last-word.kt)
| [✔️](python%2F0058-length-of-last-word.py)
| [✔️](ruby%2F0058-length-of-last-word.rb)
| [✔️](rust%2F0058-length-of-last-word.rs)
| ❌
| [✔️](swift%2F0058-Length-of-Last-Word.swift)
| [✔️](typescript%2F0058-length-of-last-word.ts)
-[0001 - Two Sum](https://leetcode.com/problems/two-sum/) | [✔️](c%2F0001-two-sum.c)
| [✔️](cpp%2F0001-two-sum.cpp)
| [✔️](csharp%2F0001-two-sum.cs)
| [✔️](dart%2F0001-two-sum.dart)
| [✔️](go%2F0001-two-sum.go)
| [✔️](java%2F0001-two-sum.java)
| [✔️](javascript%2F0001-two-sum.js)
| [✔️](kotlin%2F0001-two-sum.kt)
| [✔️](python%2F0001-two-sum.py)
| [✔️](ruby%2F0001-two-sum.rb)
| [✔️](rust%2F0001-two-sum.rs)
| [✔️](scala%2F0001-two-sum.scala)
| [✔️](swift%2F0001-two-sum.swift)
| [✔️](typescript%2F0001-two-sum.ts)
-[0014 - Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/) | [✔️](c%2F0014-Longest-Common-Prefix.c)
| [✔️](cpp%2F0014-longest-common-prefix.cpp)
| [✔️](csharp%2F0014-longest-common-prefix.cs)
| [✔️](dart%2F0014-longest-common-prefix.dart)
| [✔️](go%2F0014-longest-common-prefix.go)
| [✔️](java%2F0014-longest-common-prefix.java)
| [✔️](javascript%2F0014-longest-common-prefix.js)
| [✔️](kotlin%2F0014-longest-common-prefix.kt)
| [✔️](python%2F0014-longest-common-prefix.py)
| ❌
| [✔️](rust%2F0014-longest-common-prefix.rs)
| ❌
| ❌
| [✔️](typescript%2F0014-longest-common-prefix.ts)
-[0049 - Group Anagrams](https://leetcode.com/problems/group-anagrams/) | [✔️](c%2F0049-group-anagrams.c)
| [✔️](cpp%2F0049-group-anagrams.cpp)
| [✔️](csharp%2F0049-group-anagrams.cs)
| [✔️](dart%2F0049-group-anagrams.dart)
| [✔️](go%2F0049-group-anagrams.go)
| [✔️](java%2F0049-group-anagrams.java)
| [✔️](javascript%2F0049-group-anagrams.js)
| [✔️](kotlin%2F0049-group-anagrams.kt)
| [✔️](python%2F0049-group-anagrams.py)
| [✔️](ruby%2F0049-group-anagrams.rb)
| [✔️](rust%2F0049-group-anagrams.rs)
| ❌
| [✔️](swift%2F0049-group-anagrams.swift)
| [✔️](typescript%2F0049-group-anagrams.ts)
-[0118 - Pascals Triangle](https://leetcode.com/problems/pascals-triangle/) | [✔️](c%2F0118-pascals-triangle.c)
| [✔️](cpp%2F0118-pascals-triangle.cpp)
| [✔️](csharp%2F0118-pascals-triangle.cs)
| [✔️](dart%2F0118-pascals-triangle.dart)
| [✔️](go%2F0118-pascals-triangle.go)
| [✔️](java%2F0118-pascals-triangle.java)
| [✔️](javascript%2F0118-pascals-triangle.js)
| [✔️](kotlin%2F0118-pascals-triangle.kt)
| [✔️](python%2F0118-pascals-triangle.py)
| ❌
| [✔️](rust%2F0118-pascals-triangle.rs)
| ❌
| ❌
| [✔️](typescript%2F0118-pascals-triangle.ts)
-[0027 - Remove Element](https://leetcode.com/problems/remove-element/) | [✔️](c%2F0027-remove-element.c)
| [✔️](cpp%2F0027-remove-element.cpp)
| [✔️](csharp%2F0027-remove-element.cs)
| [✔️](dart%2F0027-remove-element.dart)
| [✔️](go%2F0027-remove-element.go)
| [✔️](java%2F0027-remove-element.java)
| [✔️](javascript%2F0027-remove-element.js)
| [✔️](kotlin%2F0027-remove-element.kt)
| [✔️](python%2F0027-remove-element.py)
| ❌
| [✔️](rust%2F0027-remove-element.rs)
| ❌
| [✔️](swift%2F0027-Remove-Element.swift)
| [✔️](typescript%2F0027-remove-element.ts)
-[0929 - Unique Email Addresses](https://leetcode.com/problems/unique-email-addresses/) | [✔️](c%2F0929-unique-email-addresses.c)
| [✔️](cpp%2F0929-unique-email-addresses.cpp)
| [✔️](csharp%2F0929-unique-email-addresses.cs)
| ❌
| [✔️](go%2F0929-unique-email-addresses.go)
| [✔️](java%2F0929-unique-email-addresses.java)
| [✔️](javascript%2F0929-unique-email-addresses.js)
| [✔️](kotlin%2F0929-unique-email-addresses.kt)
| [✔️](python%2F0929-unique-email-addresses.py)
| ❌
| [✔️](rust%2F0929-unique-email-addresses.rs)
| ❌
| [✔️](swift%2F0929-unique-email-addresses.swift)
| [✔️](typescript%2F0929-unique-email-addresses.ts)
-[0205 - Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/) | [✔️](c%2F0205-isomorphic-strings.c)
| [✔️](cpp%2F0205-Isomorphic-Strings.cpp)
| [✔️](csharp%2F0205-isomorphic-strings.cs)
| ❌
| [✔️](go%2F0205-isomorphic-strings.go)
| [✔️](java%2F0205-isomorphic-strings.java)
| [✔️](javascript%2F0205-isomorphic-strings.js)
| [✔️](kotlin%2F0205-isomorphic-strings.kt)
| [✔️](python%2F0205-isomorphic-strings.py)
| ❌
| [✔️](rust%2F0205-isomorphic-strings.rs)
| ❌
| [✔️](swift%2F0205-isomorphic-strings.swift)
| [✔️](typescript%2F0205-isomorphic-strings.ts)
-[0605 - Can Place Flowers](https://leetcode.com/problems/can-place-flowers/) | [✔️](c%2F0605-can-place-flowers.c)
| [✔️](cpp%2F0605-can-place-flowers.cpp)
| [✔️](csharp%2F0605-can-place-flowers.cs)
| ❌
| [✔️](go%2F0605-can-place-flowers.go)
| [✔️](java%2F0605-can-place-flowers.java)
| [✔️](javascript%2F0605-can-place-flowers.js)
| [✔️](kotlin%2F0605-can-place-flowers.kt)
| [✔️](python%2F0605-can-place-flowers.py)
| ❌
| [✔️](rust%2F0605-can-place-flowers.rs)
| ❌
| [✔️](swift%2F0605-can-place-flowers.swift)
| [✔️](typescript%2F0605-can-place-flowers.ts)
-[0169 - Majority Element](https://leetcode.com/problems/majority-element/) | [✔️](c%2F0169-majority-element.c)
| [✔️](cpp%2F0169-majority-element.cpp)
| [✔️](csharp%2F0169-majority-element.cs)
| ❌
| [✔️](go%2F0169-majority-element.go)
| [✔️](java%2F0169-majority-element.java)
| [✔️](javascript%2F0169-majority-element.js)
| [✔️](kotlin%2F0169-majority-element.kt)
| [✔️](python%2F0169-majority-element.py)
| ❌
| [✔️](rust%2F0169-majority-element.rs)
| ❌
| [✔️](swift%2F0169-majority-element.swift)
| [✔️](typescript%2F0169-majority-element.ts)
-[0496 - Next Greater Element I](https://leetcode.com/problems/next-greater-element-i/) | [✔️](c%2F0496-next-greater-element-i.c)
| [✔️](cpp%2F0496-next-greater-element-i.cpp)
| [✔️](csharp%2F0496-next-greater-element-i.cs)
| ❌
| [✔️](go%2F0496-next-greater-element-i.go)
| [✔️](java%2F0496-next-greater-element-i.java)
| [✔️](javascript%2F0496-next-greater-element-i.js)
| [✔️](kotlin%2F0496-next-greater-element-i.kt)
| [✔️](python%2F0496-next-greater-element-i.py)
| ❌
| [✔️](rust%2F0496-next-greater-element-I.rs)
| ❌
| ❌
| [✔️](typescript%2F0496-next-greater-element-i.ts)
-[0724 - Find Pivot Index](https://leetcode.com/problems/find-pivot-index/) | [✔️](c%2F0724-find-pivot-index.c)
| [✔️](cpp%2F0724-find-pivot-index.cpp)
| [✔️](csharp%2F0724-find-pivot-index.cs)
| ❌
| [✔️](go%2F0724-find-pivot-index.go)
| [✔️](java%2F0724-find-pivot-index.java)
| [✔️](javascript%2F0724-find-pivot-index.js)
| [✔️](kotlin%2F0724-find-pivot-index.kt)
| [✔️](python%2F0724-find-pivot-index.py)
| ❌
| [✔️](rust%2F0724-find-pivot-index.rs)
| ❌
| [✔️](swift%2F0724-find-pivot-index.swift)
| [✔️](typescript%2F0724-find-pivot-index.ts)
-[0303 - Range Sum Query - Immutable](https://leetcode.com/problems/range-sum-query-immutable/) | [✔️](c%2F0303-range-sum-query-immutable.c)
| [✔️](cpp%2F0303-range-sum-query-immutable.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0303-range-sum-query-immutable.java)
| ❌
| [✔️](kotlin%2F0303-range-sum-query-immutable.kt)
| [✔️](python%2F0303-range-sum-query-immutable.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0448 - Find All Numbers Disappeared In An Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/) | [✔️](c%2F0448-Find-All-Numbers-Disappeared-in-an-Array.c)
| [✔️](cpp%2F0448-find-all-numbers-disappeared-in-an-array.cpp)
| [✔️](csharp%2F0448-find-all-numbers-disappeared-in-an-array.cs)
| ❌
| [✔️](go%2F0448-find-all-numbers-disappeared-in-an-array.go)
| [✔️](java%2F0448-find-all-numbers-disappeared-in-an-array.java)
| [✔️](javascript%2F0448-find-all-numbers-disappeared-in-an-array.js)
| [✔️](kotlin%2F0448-find-all-numbers-disappeared-in-an-array.kt)
| [✔️](python%2F0448-find-all-numbers-disappeared-in-an-array.py)
| ❌
| [✔️](rust%2F0448-find-all-numbers-disappeared-in-an-array.rs)
| ❌
| ❌
| [✔️](typescript%2F0448-find-all-numbers-disappeared-in-an-array.ts)
-[1189 - Maximum Number of Balloons](https://leetcode.com/problems/maximum-number-of-balloons/) | [✔️](c%2F1189-Maximum-Number-of-Balloons.c)
| [✔️](cpp%2F1189-maximum-number-of-balloons.cpp)
| [✔️](csharp%2F1189-maximum-number-of-balloons.cs)
| ❌
| [✔️](go%2F1189-maximum-number-of-balloons.go)
| [✔️](java%2F1189-maximum-number-of-balloons.java)
| [✔️](javascript%2F1189-maximum-number-of-balloons.js)
| [✔️](kotlin%2F1189-maximum-number-of-balloons.kt)
| [✔️](python%2F1189-Maximum-Number-of-Balloons.py)
| ❌
| [✔️](rust%2F1189-maximum-number-of-balloons.rs)
| ❌
| ❌
| [✔️](typescript%2F1189-maximum-number-of-balloons.ts)
-[0290 - Word Pattern](https://leetcode.com/problems/word-pattern/) | [✔️](c%2F0290-Word-Pattern.c)
| [✔️](cpp%2F0290-word-pattern.cpp)
| [✔️](csharp%2F0290-word-pattern.cs)
| ❌
| [✔️](go%2F0290-word-pattern.go)
| [✔️](java%2F0290-word-pattern.java)
| [✔️](javascript%2F0290-word-pattern.js)
| [✔️](kotlin%2F0290-word-pattern.kt)
| [✔️](python%2F0290-word-pattern.py)
| ❌
| [✔️](rust%2F0290-word-pattern.rs)
| ❌
| ❌
| [✔️](typescript%2F0290-word-pattern.ts)
-[0706 - Design HashMap](https://leetcode.com/problems/design-hashmap/) | [✔️](c%2F0706-design-hashmap.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0706-design-hashmap.kt)
| [✔️](python%2F0706-design-hashmap.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0347 - Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/) | [✔️](c%2F0347-top-k-frequent-elements.c)
| [✔️](cpp%2F0347-top-k-frequent-elements.cpp)
| [✔️](csharp%2F0347-top-k-frequent-elements.cs)
| ❌
| [✔️](go%2F0347-top-k-frequent-elements.go)
| [✔️](java%2F0347-top-k-frequent-elements.java)
| [✔️](javascript%2F0347-top-k-frequent-elements.js)
| [✔️](kotlin%2F0347-top-k-frequent-elements.kt)
| [✔️](python%2F0347-top-k-frequent-elements.py)
| [✔️](ruby%2F0347-top-k-frequent-elements.rb)
| [✔️](rust%2F0347-top-k-frequent-elements.rs)
| [✔️](scala%2F0347-top-k-frequent-elements.scala)
| [✔️](swift%2F0347-top-k-frequent-elements.swift)
| [✔️](typescript%2F0347-top-k-frequent-elements.ts)
-[0706 - Design Hashmap](https://leetcode.com/problems/design-hashmap/) | [✔️](c%2F0706-design-hashmap.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0706-design-hashmap.kt)
| [✔️](python%2F0706-design-hashmap.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0238 - Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/) | [✔️](c%2F0238-product-of-array-except-self.c)
| [✔️](cpp%2F0238-product-of-array-except-self.cpp)
| [✔️](csharp%2F0238-product-of-array-except-self.cs)
| ❌
| [✔️](go%2F0238-product-of-array-except-self.go)
| [✔️](java%2F0238-product-of-array-except-self.java)
| [✔️](javascript%2F0238-product-of-array-except-self.js)
| [✔️](kotlin%2F0238-product-of-array-except-self.kt)
| [✔️](python%2F0238-product-of-array-except-self.py)
| [✔️](ruby%2F0238-product-of-array-except-self.rb)
| [✔️](rust%2F0238-product-of-array-except-self.rs)
| ❌
| [✔️](swift%2F0238-product-of-array-except-self.swift)
| [✔️](typescript%2F0238-product-of-array-except-self.ts)
-[0036 - Valid Sudoku](https://leetcode.com/problems/valid-sudoku/) | [✔️](c%2F0036-valid-sudoku.c)
| [✔️](cpp%2F0036-valid-sudoku.cpp)
| [✔️](csharp%2F0036-valid-sudoku.cs)
| [✔️](dart%2F0036-valid-sudoku.dart)
| [✔️](go%2F0036-valid-sudoku.go)
| [✔️](java%2F0036-valid-sudoku.java)
| [✔️](javascript%2F0036-valid-sudoku.js)
| [✔️](kotlin%2F0036-valid-sudoku.kt)
| [✔️](python%2F0036-valid-sudoku.py)
| [✔️](ruby%2F0036-valid-sudoku.rb)
| [✔️](rust%2F0036-valid-sudoku.rs)
| ❌
| ❌
| [✔️](typescript%2F0036-valid-sudoku.ts)
-[0271 - Encode And Decode Strings](https://leetcode.com/problems/encode-and-decode-strings/) | ❌
| [✔️](cpp%2F0271-encode-and-decode-strings.cpp)
| [✔️](csharp%2F0271-encode-and-decode-strings.cs)
| ❌
| [✔️](go%2F0271-encode-and-decode-strings.go)
| [✔️](java%2F0271-encode-and-decode-strings.java)
| [✔️](javascript%2F0271-encode-and-decode-strings.js)
| ❌
| [✔️](python%2F0271-encode-and-decode-strings.py)
| [✔️](ruby%2F0271-encode-and-decode-strings.rb)
| [✔️](rust%2F0271-encode-and-decode-strings.rs)
| ❌
| [✔️](swift%2F0271-encode-and-decode-strings.swift)
| [✔️](typescript%2F0271-encode-and-decode-strings.ts)
-[0128 - Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/) | [✔️](c%2F0128-longest-consecutive-sequence.c)
| [✔️](cpp%2F0128-longest-consecutive-sequence.cpp)
| [✔️](csharp%2F0128-longest-consecutive-sequence.cs)
| ❌
| [✔️](go%2F0128-longest-consecutive-sequence.go)
| [✔️](java%2F0128-longest-consecutive-sequence.java)
| [✔️](javascript%2F0128-longest-consecutive-sequence.js)
| [✔️](kotlin%2F0128-longest-consecutive-sequence.kt)
| [✔️](python%2F0128-longest-consecutive-sequence.py)
| [✔️](ruby%2F0128-longest-consecutive-sequence.rb)
| [✔️](rust%2F0128-longest-consecutive-sequence.rs)
| ❌
| [✔️](swift%2F0128-longest-consecutive-sequence.swift)
| [✔️](typescript%2F0128-longest-consecutive-sequence.ts)
-[0075 - Sort Colors](https://leetcode.com/problems/sort-colors/) | [✔️](c%2F0075-sort-colors.c)
| [✔️](cpp%2F0075-Sort-colors.cpp)
| [✔️](csharp%2F0075-sort-colors.cs)
| ❌
| [✔️](go%2F0075-sort-colors.go)
| [✔️](java%2F0075-sort-colors.java)
| [✔️](javascript%2F0075-sort-colors.js)
| [✔️](kotlin%2F0075-sort-colors.kt)
| [✔️](python%2F0075-sort-colors.py)
| ❌
| [✔️](rust%2F0075-sort-colors.rs)
| ❌
| [✔️](swift%2F0075-sort-colors.swift)
| [✔️](typescript%2F0075-sort-colors.ts)
-[0535 - Encode And Decode Tinyurl](https://leetcode.com/problems/encode-and-decode-tinyurl/) | [✔️](c%2F0535-encode-and-decode-tinyurl.c)
| [✔️](cpp%2F0535-encode-and-decode-tinyurl.cpp)
| ❌
| ❌
| [✔️](go%2F0535-encode-and-decode-tinyurl.go)
| ❌
| [✔️](javascript%2F0535-encode-and-decode-tinyurl.js)
| [✔️](kotlin%2F0535-encode-and-decode-tinyurl.kt)
| [✔️](python%2F0535-encode-and-decode-tinyurl.py)
| ❌
| [✔️](rust%2F0535-encode-and-decode-tinyURL.rs)
| ❌
| [✔️](swift%2F0535-Encode-and-Decode-TinyURL.Swift)
| [✔️](typescript%2F0535-encode-and-decode-tinyurl.ts)
-[0554 - Brick Wall](https://leetcode.com/problems/brick-wall/) | [✔️](c%2F0554-Brick-Wall.c)
| [✔️](cpp%2F0554-brick-wall.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0554-brick-wall.java)
| [✔️](javascript%2F0554-brick-wall.js)
| ❌
| [✔️](python%2F0554-brick-wall.py)
| ❌
| [✔️](rust%2F0554-brick-wall.rs)
| ❌
| ❌
| [✔️](typescript%2F0554-brick-wall.ts)
-[0122 - Best Time to Buy And Sell Stock II](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/) | [✔️](c%2F0122-best-time-to-buy-and-sell-stock-ii.c)
| [✔️](cpp%2F0122-best-time-to-buy-and-sell-stock-ii.cpp)
| ❌
| ❌
| [✔️](go%2F0122-best-time-to-buy-and-sell-stock-ii.go)
| [✔️](java%2F0122-best-time-to-buy-and-sell-stock-II.java)
| [✔️](javascript%2F0122-best-time-to-buy-and-sell-stock-ii.js)
| [✔️](kotlin%2F0122-best-time-to-buy-and-sell-stock-ii.kt)
| [✔️](python%2F0122-best-time-to-buy-and-sell-stock-II.py)
| ❌
| [✔️](rust%2F0122-best-time-to-buy-and-sell-stock-ii.rs)
| ❌
| ❌
| ❌
-[0560 - Subarray Sum Equals K](https://leetcode.com/problems/subarray-sum-equals-k/) | [✔️](c%2F0560-subarray-sum-equals-k.c)
| [✔️](cpp%2F0560-subarray-sum-equals-k.cpp)
| ❌
| ❌
| [✔️](go%2F0560-subarray-sum-equals-k.go)
| [✔️](java%2F0560-subarray-sum-equals-k.java)
| [✔️](javascript%2F0560-subarray-sum-equals-k.js)
| [✔️](kotlin%2F0560-subarray-sum-equals-k.kt)
| [✔️](python%2F0560-subarray-sum-equals-k.py)
| ❌
| [✔️](rust%2F0560-subarray-sum-equals-k.rs)
| ❌
| ❌
| [✔️](typescript%2F0560-subarray-sum-equals-k.ts)
-[1930 - Unique Length 3 Palindromic Subsequences](https://leetcode.com/problems/unique-length-3-palindromic-subsequences/) | [✔️](c%2F1930-unique-length-3-palindromic-subsequences.c)
| [✔️](cpp%2F1930-unique-length-3-palindromic-subsequences.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F1930-unique-length-3-palindromic-subsequences.java)
| [✔️](javascript%2F1930-unique-length-3-palindromic-subsequences.js)
| [✔️](kotlin%2F1930-unique-length-3-palindromic-subsequences.kt)
| [✔️](python%2F1930-unique-length-3-palindromic-subsequences.py)
| ❌
| [✔️](rust%2F1930-unique-length-3-palindromic-subsequences.rs)
| ❌
| ❌
| [✔️](typescript%2F1930-unique-length-3-palindromic-subsequences.ts)
-[1963 - Minimum Number of Swaps to Make The String Balanced](https://leetcode.com/problems/minimum-number-of-swaps-to-make-the-string-balanced/) | [✔️](c%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.c)
| [✔️](cpp%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.js)
| [✔️](kotlin%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.kt)
| [✔️](python%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[2001 - Number of Pairs of Interchangeable Rectangles](https://leetcode.com/problems/number-of-pairs-of-interchangeable-rectangles/) | [✔️](c%2F2001-number-of-pairs-of-interchangeable-rectangles.c)
| [✔️](cpp%2F2001-number-of-pairs-of-interchangeable-rectangles.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2001-number-of-pairs-of-interchangeable-rectangles.js)
| ❌
| [✔️](python%2F2001-number-of-pairs-of-interchangeable-rectangles.py)
| ❌
| [✔️](rust%2F2001-number-of-pairs-of-interchangeable-rectangles.rs)
| ❌
| ❌
| ❌
-[2002 - Maximum Product of The Length of Two Palindromic Subsequences](https://leetcode.com/problems/maximum-product-of-the-length-of-two-palindromic-subsequences/) | [✔️](c%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.c)
| [✔️](cpp%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[2017 - Grid Game](https://leetcode.com/problems/grid-game/) | ❌
| [✔️](cpp%2F2017-grid-game.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F2017-grid-game.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0438 - Find All Anagrams In a String](https://leetcode.com/problems/find-all-anagrams-in-a-string/) | [✔️](c%2F0438-find-all-anagrams-in-a-string.c)
| [✔️](cpp%2F0438-find-all-anagrams-in-a-string.cpp)
| [✔️](csharp%2F0438-find-all-anagrams-in-a-string.cs)
| ❌
| [✔️](go%2F0438-find-all-anagrams-in-a-string.go)
| [✔️](java%2F0438-find-all-anagrams-in-a-string.java)
| [✔️](javascript%2F0438-find-all-anagrams-in-a-string.js)
| [✔️](kotlin%2F0438-find-all-anagrams-in-a-string.kt)
| [✔️](python%2F0438-find-all-anagrams-in-a-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0028 - Find The Index of The First Occurrence In a String](https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/) | [✔️](c%2F0028-find-the-index-of-the-first-occurrence-in-a-string.c)
| [✔️](cpp%2F0028-find-the-index-of-the-first-occurrence-in-a-string.cpp)
| ❌
| ❌
| [✔️](go%2F0028-find-the-index-of-the-first-occurrence-in-a-string.go)
| ❌
| ❌
| [✔️](kotlin%2F0028-find-the-index-of-the-first-occurrence-in-a-string.kt)
| [✔️](python%2F0028-find-the-index-of-the-first-occurrence-in-a-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0280 - Wiggle Sort](https://leetcode.com/problems/wiggle-sort/) | ❌
| [✔️](cpp%2F0280-wiggle-sort.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0280-wiggle-sort.kt)
| [✔️](python%2F0280-wiggle-sort.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0179 - Largest Number](https://leetcode.com/problems/largest-number/) | [✔️](c%2F0179-largest-number.c)
| [✔️](cpp%2F0179-largest-number.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0179-largest-number.java)
| ❌
| [✔️](kotlin%2F0179-largest-number.kt)
| [✔️](python%2F0179-largest-number.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0179-largest-number.ts)
-[0523 - Continuous Subarray Sum](https://leetcode.com/problems/continuous-subarray-sum/) | [✔️](c%2F0523-continuous-subarray-sum.c)
| [✔️](cpp%2F0523-continuous-subarray-sum.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0523-continuous-subarray-sum.java)
| ❌
| [✔️](kotlin%2F0523-continuous-subarray-sum.kt)
| [✔️](python%2F0523-continuous-subarray-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0838 - Push Dominoes](https://leetcode.com/problems/push-dominoes/) | ❌
| [✔️](cpp%2F0838-push-dominoes.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0838-push-dominoes.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0838-push-dominoes.ts)
-[0187 - Repeated Dna Sequences](https://leetcode.com/problems/repeated-dna-sequences/) | ❌
| [✔️](cpp%2F0187-repeated-dna-sequences.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0187-repeated-dna-sequences.java)
| ❌
| [✔️](kotlin%2F0187-repeated-dna-sequences.kt)
| [✔️](python%2F0187-repeated-dna-sequences.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0187-repeated-dna-sequences.ts)
-[0380 - Insert Delete Get Random O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/) | ❌
| [✔️](cpp%2F0380-insert-delete-getrandom-o1.cpp)
| ❌
| ❌
| [✔️](go%2F0380-insert-delete-getrandom-o1.go)
| [✔️](java%2F0380-insert-delete-getrandom-o1.java)
| [✔️](javascript%2F0380-insert-delete-getrandom-o1.js)
| [✔️](kotlin%2F0380-insert-delete-getrandom-o1.kt)
| [✔️](python%2F0380-insert-delete-getrandom-o1.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0380-insert-delete-getrandom-o1.swift)
| [✔️](typescript%2F0380-insert-delete-getrandom-o1.ts)
-[1461 - Check if a String Contains All Binary Codes of Size K](https://leetcode.com/problems/check-if-a-string-contains-all-binary-codes-of-size-k/) | ❌
| [✔️](cpp%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.kt)
| [✔️](python%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0304 - Range Sum Query 2D Immutable](https://leetcode.com/problems/range-sum-query-2d-immutable/) | ❌
| [✔️](cpp%2F0304-range-sum-query-2d-immutable.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0304-range-sum-query-2d-immutable.kt)
| [✔️](python%2F0304-range-sum-query-2d-immutable.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0665 - Non Decreasing Array](https://leetcode.com/problems/non-decreasing-array/) | ❌
| [✔️](cpp%2F0665-non-decreasing-array.cpp)
| ❌
| ❌
| [✔️](go%2F0665-non-decreasing-array.go)
| [✔️](java%2F0665-non-decreasing-array.java)
| [✔️](javascript%2F0665-non-decreasing-array.js)
| [✔️](kotlin%2F0665-non-decreasing-array.kt)
| [✔️](python%2F0665-non-decreasing-array.py)
| ❌
| ❌
| [✔️](scala%2F0665-non-decreasing-array.scala)
| ❌
| [✔️](typescript%2F0665-non-decreasing-array.ts)
-[0041 - First Missing Positive](https://leetcode.com/problems/first-missing-positive/) | ❌
| [✔️](cpp%2F0041-first-missing-positive.cpp)
| ❌
| ❌
| [✔️](go%2F0041-first-missing-positive.go)
| [✔️](java%2F0041-first-missing-positive.java)
| ❌
| [✔️](kotlin%2F0041-first-missing-positive.kt)
| [✔️](python%2F0041-first-missing-positive.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0041-first-missing-positive.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0217 - Contains Duplicate](https://leetcode.com/problems/contains-duplicate/) | ❌
| [✔️](c%2F0217-contains-duplicate.c)
| [✔️](cpp%2F0217-contains-duplicate.cpp)
| [✔️](csharp%2F0217-contains-duplicate.cs)
| [✔️](dart%2F0217-contains-duplicate.dart)
| [✔️](go%2F0217-contains-duplicate.go)
| ❌
| [✔️](java%2F0217-contains-duplicate.java)
| [✔️](javascript%2F0217-contains-duplicate.js)
| [✔️](kotlin%2F0217-contains-duplicate.kt)
| [✔️](python%2F0217-contains-duplicate.py)
| [✔️](ruby%2F0217-contains-duplicate.rb)
| [✔️](rust%2F0217-contains-duplicate.rs)
| [✔️](scala%2F0217-contains-duplicate.scala)
| [✔️](swift%2F0217-contains-duplicate.swift)
| [✔️](typescript%2F0217-contains-duplicate.ts)
+[0242 - Valid Anagram](https://leetcode.com/problems/valid-anagram/) | ❌
| [✔️](c%2F0242-valid-anagram.c)
| [✔️](cpp%2F0242-valid-anagram.cpp)
| [✔️](csharp%2F0242-valid-anagram.cs)
| [✔️](dart%2F0242-valid-anagram.dart)
| [✔️](go%2F0242-valid-anagram.go)
| ❌
| [✔️](java%2F0242-valid-anagram.java)
| [✔️](javascript%2F0242-valid-anagram.js)
| [✔️](kotlin%2F0242-valid-anagram.kt)
| [✔️](python%2F0242-valid-anagram.py)
| [✔️](ruby%2F0242-valid-anagram.rb)
| [✔️](rust%2F0242-valid-anagram.rs)
| [✔️](scala%2F0242-valid-anagram.scala)
| [✔️](swift%2F0242-valid-anagram.swift)
| [✔️](typescript%2F0242-valid-anagram.ts)
+[1929 - Concatenation of Array](https://leetcode.com/problems/concatenation-of-array/) | ❌
| [✔️](c%2F1929-concatenation-of-array.c)
| [✔️](cpp%2F1929-concatenation-of-array.cpp)
| [✔️](csharp%2F1929-concatenation-of-array.cs)
| [✔️](dart%2F1929-concatenation-of-array.dart)
| [✔️](go%2F1929-concatenation-of-array.go)
| ❌
| [✔️](java%2F1929-concatenation-of-array.java)
| [✔️](javascript%2F1929-concatenation-of-array.js)
| [✔️](kotlin%2F1929-concatenation-of-array.kt)
| [✔️](python%2F1929-concatenation-of-array.py)
| [✔️](ruby%2F1929-concatenation-of-array.rb)
| [✔️](rust%2F1929-concatenation-of-array.rs)
| [✔️](scala%2F1929-concatenation-of-array.scala)
| [✔️](swift%2F1929-concatenation-of-array.swift)
| [✔️](typescript%2F1929-concatenation-of-array.ts)
+[1299 - Replace Elements With Greatest Element On Right Side](https://leetcode.com/problems/replace-elements-with-greatest-element-on-right-side/) | ❌
| [✔️](c%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.c)
| [✔️](cpp%2F1299-Replace-Elements-with-Greatest-Element-on-Right-Side.cpp)
| [✔️](csharp%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.cs)
| [✔️](dart%2F1299-replace-elements-with-greatest-element-on-right-side.dart)
| [✔️](go%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.go)
| ❌
| [✔️](java%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.java)
| [✔️](javascript%2F1299-Replace-Elements-with-Greatest-Element-on-Right-Side.js)
| [✔️](kotlin%2F1299-replace-elements-with-greatest-element-on-right-side.kt)
| [✔️](python%2F1299-replace-elements-with-greatest-element-on-right-side.py)
| [✔️](ruby%2F1299-replace-elements-with-greatest-element-on-right-side.rb)
| [✔️](rust%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.rs)
| ❌
| [✔️](swift%2F1299-replace-elements-with-greatest-element-on-right-side.swift)
| [✔️](typescript%2F1299-Replace-Elements-With-Greatest-Element-On-Right-Side.ts)
+[0392 - Is Subsequence](https://leetcode.com/problems/is-subsequence/) | ❌
| [✔️](c%2F0392-is-subsequence.c)
| [✔️](cpp%2F0392-is-subsequence.cpp)
| [✔️](csharp%2F0392-is-subsequence.cs)
| [✔️](dart%2F0392-is-subsequence.dart)
| [✔️](go%2F0392-is-subsequence.go)
| ❌
| [✔️](java%2F0392-is-subsequence.java)
| [✔️](javascript%2F0392-is-subsequence.js)
| [✔️](kotlin%2F0392-is-subsequence.kt)
| [✔️](python%2F0392-is-subsequence.py)
| [✔️](ruby%2F0392-is-subsequence.rb)
| [✔️](rust%2F0392-is-subsequence.rs)
| ❌
| [✔️](swift%2F0392-is-subsequence.swift)
| [✔️](typescript%2F0392-is-subsequence.ts)
+[0058 - Length of Last Word](https://leetcode.com/problems/length-of-last-word/) | ❌
| [✔️](c%2F0058-length-of-last-word.c)
| [✔️](cpp%2F0058-length-of-last-word.cpp)
| [✔️](csharp%2F0058-length-of-last-word.cs)
| [✔️](dart%2F0058-length-of-last-word.dart)
| [✔️](go%2F0058-Length-of-Last-Word.go)
| ❌
| [✔️](java%2F0058-length-of-last-word.java)
| [✔️](javascript%2F0058-length-of-last-word.js)
| [✔️](kotlin%2F0058-length-of-last-word.kt)
| [✔️](python%2F0058-length-of-last-word.py)
| [✔️](ruby%2F0058-length-of-last-word.rb)
| [✔️](rust%2F0058-length-of-last-word.rs)
| [✔️](scala%2F0058-length-of-last-word.scala)
| [✔️](swift%2F0058-Length-of-Last-Word.swift)
| [✔️](typescript%2F0058-length-of-last-word.ts)
+[0001 - Two Sum](https://leetcode.com/problems/two-sum/) | ❌
| [✔️](c%2F0001-two-sum.c)
| [✔️](cpp%2F0001-two-sum.cpp)
| [✔️](csharp%2F0001-two-sum.cs)
| [✔️](dart%2F0001-two-sum.dart)
| [✔️](go%2F0001-two-sum.go)
| ❌
| [✔️](java%2F0001-two-sum.java)
| [✔️](javascript%2F0001-two-sum.js)
| [✔️](kotlin%2F0001-two-sum.kt)
| [✔️](python%2F0001-two-sum.py)
| [✔️](ruby%2F0001-two-sum.rb)
| [✔️](rust%2F0001-two-sum.rs)
| [✔️](scala%2F0001-two-sum.scala)
| [✔️](swift%2F0001-two-sum.swift)
| [✔️](typescript%2F0001-two-sum.ts)
+[0014 - Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/) | ❌
| [✔️](c%2F0014-Longest-Common-Prefix.c)
| [✔️](cpp%2F0014-longest-common-prefix.cpp)
| [✔️](csharp%2F0014-longest-common-prefix.cs)
| [✔️](dart%2F0014-longest-common-prefix.dart)
| [✔️](go%2F0014-longest-common-prefix.go)
| ❌
| [✔️](java%2F0014-longest-common-prefix.java)
| [✔️](javascript%2F0014-longest-common-prefix.js)
| [✔️](kotlin%2F0014-longest-common-prefix.kt)
| [✔️](python%2F0014-longest-common-prefix.py)
| ❌
| [✔️](rust%2F0014-longest-common-prefix.rs)
| ❌
| [✔️](swift%2F0014-longest-common-prefix.swift)
| [✔️](typescript%2F0014-longest-common-prefix.ts)
+[0049 - Group Anagrams](https://leetcode.com/problems/group-anagrams/) | ❌
| [✔️](c%2F0049-group-anagrams.c)
| [✔️](cpp%2F0049-group-anagrams.cpp)
| [✔️](csharp%2F0049-group-anagrams.cs)
| [✔️](dart%2F0049-group-anagrams.dart)
| [✔️](go%2F0049-group-anagrams.go)
| ❌
| [✔️](java%2F0049-group-anagrams.java)
| [✔️](javascript%2F0049-group-anagrams.js)
| [✔️](kotlin%2F0049-group-anagrams.kt)
| [✔️](python%2F0049-group-anagrams.py)
| [✔️](ruby%2F0049-group-anagrams.rb)
| [✔️](rust%2F0049-group-anagrams.rs)
| [✔️](scala%2F0049-group-anagrams.scala)
| [✔️](swift%2F0049-group-anagrams.swift)
| [✔️](typescript%2F0049-group-anagrams.ts)
+[0118 - Pascals Triangle](https://leetcode.com/problems/pascals-triangle/) | ❌
| [✔️](c%2F0118-pascals-triangle.c)
| [✔️](cpp%2F0118-pascals-triangle.cpp)
| [✔️](csharp%2F0118-pascals-triangle.cs)
| [✔️](dart%2F0118-pascals-triangle.dart)
| [✔️](go%2F0118-pascals-triangle.go)
| ❌
| [✔️](java%2F0118-pascals-triangle.java)
| [✔️](javascript%2F0118-pascals-triangle.js)
| [✔️](kotlin%2F0118-pascals-triangle.kt)
| [✔️](python%2F0118-pascals-triangle.py)
| ❌
| [✔️](rust%2F0118-pascals-triangle.rs)
| ❌
| ❌
| [✔️](typescript%2F0118-pascals-triangle.ts)
+[0027 - Remove Element](https://leetcode.com/problems/remove-element/) | ❌
| [✔️](c%2F0027-remove-element.c)
| [✔️](cpp%2F0027-remove-element.cpp)
| [✔️](csharp%2F0027-remove-element.cs)
| [✔️](dart%2F0027-remove-element.dart)
| [✔️](go%2F0027-remove-element.go)
| ❌
| [✔️](java%2F0027-remove-element.java)
| [✔️](javascript%2F0027-remove-element.js)
| [✔️](kotlin%2F0027-remove-element.kt)
| [✔️](python%2F0027-remove-element.py)
| ❌
| [✔️](rust%2F0027-remove-element.rs)
| ❌
| [✔️](swift%2F0027-Remove-Element.swift)
| [✔️](typescript%2F0027-remove-element.ts)
+[0929 - Unique Email Addresses](https://leetcode.com/problems/unique-email-addresses/) | ❌
| [✔️](c%2F0929-unique-email-addresses.c)
| [✔️](cpp%2F0929-unique-email-addresses.cpp)
| [✔️](csharp%2F0929-unique-email-addresses.cs)
| [✔️](dart%2F0929-unique-email-addresses.dart)
| [✔️](go%2F0929-unique-email-addresses.go)
| ❌
| [✔️](java%2F0929-unique-email-addresses.java)
| [✔️](javascript%2F0929-unique-email-addresses.js)
| [✔️](kotlin%2F0929-unique-email-addresses.kt)
| [✔️](python%2F0929-unique-email-addresses.py)
| ❌
| [✔️](rust%2F0929-unique-email-addresses.rs)
| ❌
| [✔️](swift%2F0929-unique-email-addresses.swift)
| [✔️](typescript%2F0929-unique-email-addresses.ts)
+[0205 - Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/) | ❌
| [✔️](c%2F0205-isomorphic-strings.c)
| [✔️](cpp%2F0205-Isomorphic-Strings.cpp)
| [✔️](csharp%2F0205-isomorphic-strings.cs)
| ❌
| [✔️](go%2F0205-isomorphic-strings.go)
| ❌
| [✔️](java%2F0205-isomorphic-strings.java)
| [✔️](javascript%2F0205-isomorphic-strings.js)
| [✔️](kotlin%2F0205-isomorphic-strings.kt)
| [✔️](python%2F0205-isomorphic-strings.py)
| ❌
| [✔️](rust%2F0205-isomorphic-strings.rs)
| ❌
| [✔️](swift%2F0205-isomorphic-strings.swift)
| [✔️](typescript%2F0205-isomorphic-strings.ts)
+[0605 - Can Place Flowers](https://leetcode.com/problems/can-place-flowers/) | ❌
| [✔️](c%2F0605-can-place-flowers.c)
| [✔️](cpp%2F0605-can-place-flowers.cpp)
| [✔️](csharp%2F0605-can-place-flowers.cs)
| ❌
| [✔️](go%2F0605-can-place-flowers.go)
| ❌
| [✔️](java%2F0605-can-place-flowers.java)
| [✔️](javascript%2F0605-can-place-flowers.js)
| [✔️](kotlin%2F0605-can-place-flowers.kt)
| [✔️](python%2F0605-can-place-flowers.py)
| ❌
| [✔️](rust%2F0605-can-place-flowers.rs)
| ❌
| [✔️](swift%2F0605-can-place-flowers.swift)
| [✔️](typescript%2F0605-can-place-flowers.ts)
+[0169 - Majority Element](https://leetcode.com/problems/majority-element/) | ❌
| [✔️](c%2F0169-majority-element.c)
| [✔️](cpp%2F0169-majority-element.cpp)
| [✔️](csharp%2F0169-majority-element.cs)
| [✔️](dart%2F0169-majority-element.dart)
| [✔️](go%2F0169-majority-element.go)
| ❌
| [✔️](java%2F0169-majority-element.java)
| [✔️](javascript%2F0169-majority-element.js)
| [✔️](kotlin%2F0169-majority-element.kt)
| [✔️](python%2F0169-majority-element.py)
| ❌
| [✔️](rust%2F0169-majority-element.rs)
| ❌
| [✔️](swift%2F0169-majority-element.swift)
| [✔️](typescript%2F0169-majority-element.ts)
+[0496 - Next Greater Element I](https://leetcode.com/problems/next-greater-element-i/) | ❌
| [✔️](c%2F0496-next-greater-element-i.c)
| [✔️](cpp%2F0496-next-greater-element-i.cpp)
| [✔️](csharp%2F0496-next-greater-element-i.cs)
| ❌
| [✔️](go%2F0496-next-greater-element-i.go)
| ❌
| [✔️](java%2F0496-next-greater-element-i.java)
| [✔️](javascript%2F0496-next-greater-element-i.js)
| [✔️](kotlin%2F0496-next-greater-element-i.kt)
| [✔️](python%2F0496-next-greater-element-i.py)
| ❌
| [✔️](rust%2F0496-next-greater-element-I.rs)
| ❌
| ❌
| [✔️](typescript%2F0496-next-greater-element-i.ts)
+[0724 - Find Pivot Index](https://leetcode.com/problems/find-pivot-index/) | ❌
| [✔️](c%2F0724-find-pivot-index.c)
| [✔️](cpp%2F0724-find-pivot-index.cpp)
| [✔️](csharp%2F0724-find-pivot-index.cs)
| ❌
| [✔️](go%2F0724-find-pivot-index.go)
| ❌
| [✔️](java%2F0724-find-pivot-index.java)
| [✔️](javascript%2F0724-find-pivot-index.js)
| [✔️](kotlin%2F0724-find-pivot-index.kt)
| [✔️](python%2F0724-find-pivot-index.py)
| ❌
| [✔️](rust%2F0724-find-pivot-index.rs)
| ❌
| [✔️](swift%2F0724-find-pivot-index.swift)
| [✔️](typescript%2F0724-find-pivot-index.ts)
+[0303 - Range Sum Query - Immutable](https://leetcode.com/problems/range-sum-query-immutable/) | ❌
| [✔️](c%2F0303-range-sum-query-immutable.c)
| [✔️](cpp%2F0303-range-sum-query-immutable.cpp)
| [✔️](csharp%2F0303-range-sum-query-immutable.cs)
| ❌
| [✔️](go%2F0303-range-sum-query.go)
| ❌
| [✔️](java%2F0303-range-sum-query-immutable.java)
| [✔️](javascript%2F0303-range-sum-query-immutable.js)
| [✔️](kotlin%2F0303-range-sum-query-immutable.kt)
| [✔️](python%2F0303-range-sum-query-immutable.py)
| ❌
| [✔️](rust%2F0303-range-sum-query-immutable.rs)
| ❌
| [✔️](swift%2F0303-range-sum-query-immutable.swift)
| [✔️](typescript%2F0303-range-sum-query-immutable.ts)
+[0448 - Find All Numbers Disappeared in An Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/) | ❌
| [✔️](c%2F0448-Find-All-Numbers-Disappeared-in-an-Array.c)
| [✔️](cpp%2F0448-find-all-numbers-disappeared-in-an-array.cpp)
| [✔️](csharp%2F0448-find-all-numbers-disappeared-in-an-array.cs)
| ❌
| [✔️](go%2F0448-find-all-numbers-disappeared-in-an-array.go)
| ❌
| [✔️](java%2F0448-find-all-numbers-disappeared-in-an-array.java)
| [✔️](javascript%2F0448-find-all-numbers-disappeared-in-an-array.js)
| [✔️](kotlin%2F0448-find-all-numbers-disappeared-in-an-array.kt)
| [✔️](python%2F0448-find-all-numbers-disappeared-in-an-array.py)
| ❌
| [✔️](rust%2F0448-find-all-numbers-disappeared-in-an-array.rs)
| ❌
| ❌
| [✔️](typescript%2F0448-find-all-numbers-disappeared-in-an-array.ts)
+[1189 - Maximum Number of Balloons](https://leetcode.com/problems/maximum-number-of-balloons/) | ❌
| [✔️](c%2F1189-Maximum-Number-of-Balloons.c)
| [✔️](cpp%2F1189-maximum-number-of-balloons.cpp)
| [✔️](csharp%2F1189-maximum-number-of-balloons.cs)
| ❌
| [✔️](go%2F1189-maximum-number-of-balloons.go)
| ❌
| [✔️](java%2F1189-maximum-number-of-balloons.java)
| [✔️](javascript%2F1189-maximum-number-of-balloons.js)
| [✔️](kotlin%2F1189-maximum-number-of-balloons.kt)
| [✔️](python%2F1189-maximum-number-of-balloons.py)
| ❌
| [✔️](rust%2F1189-maximum-number-of-balloons.rs)
| ❌
| ❌
| [✔️](typescript%2F1189-maximum-number-of-balloons.ts)
+[0290 - Word Pattern](https://leetcode.com/problems/word-pattern/) | ❌
| [✔️](c%2F0290-Word-Pattern.c)
| [✔️](cpp%2F0290-word-pattern.cpp)
| [✔️](csharp%2F0290-word-pattern.cs)
| ❌
| [✔️](go%2F0290-word-pattern.go)
| ❌
| [✔️](java%2F0290-word-pattern.java)
| [✔️](javascript%2F0290-word-pattern.js)
| [✔️](kotlin%2F0290-word-pattern.kt)
| [✔️](python%2F0290-word-pattern.py)
| ❌
| [✔️](rust%2F0290-word-pattern.rs)
| ❌
| ❌
| [✔️](typescript%2F0290-word-pattern.ts)
+[0705 - Design HashSet](https://leetcode.com/problems/design-hashset/) | ❌
| [✔️](c%2F0705-design-hashset.c)
| [✔️](cpp%2F0705-design-hashset.cpp)
| [✔️](csharp%2F0705-design-hashset.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0705-design-hashset.java)
| [✔️](javascript%2F0705-design-hashset.js)
| [✔️](kotlin%2F0705-design-hashset.kt)
| [✔️](python%2F0705-design-hashset.py)
| ❌
| [✔️](rust%2F0705-design-hashset.rs)
| ❌
| [✔️](swift%2F0705-design-hashset.swift)
| [✔️](typescript%2F0705-design-hashset.ts)
+[0706 - Design HashMap](https://leetcode.com/problems/design-hashmap/) | ❌
| [✔️](c%2F0706-design-hashmap.c)
| [✔️](cpp%2F0706-design-hashmap.cpp)
| [✔️](csharp%2F0706-design-hashmap.cs)
| ❌
| [✔️](go%2F0706-design-hashmap.go)
| ❌
| [✔️](java%2F0706-design-hashmap.java)
| [✔️](javascript%2F0706-design-hashmap.js)
| [✔️](kotlin%2F0706-design-hashmap.kt)
| [✔️](python%2F0706-design-hashmap.py)
| ❌
| [✔️](rust%2F0706-design-hashmap.rs)
| ❌
| [✔️](swift%2F0706-design-hashmap.swift)
| ❌
+[0912 - Sort an Array](https://leetcode.com/problems/sort-an-array/) | ❌
| [✔️](c%2F0912-sort-an-array.c)
| [✔️](cpp%2F0912-sort-an-array.cpp)
| [✔️](csharp%2F0912-sort-an-array.cs)
| ❌
| [✔️](go%2F0912-sort-an-array.go)
| ❌
| [✔️](java%2F0912-sort-an-array.java)
| [✔️](javascript%2F0912-sort-an-array.js)
| [✔️](kotlin%2F0912-sort-an-array.kt)
| [✔️](python%2F0912-sort-an-array.py)
| ❌
| [✔️](rust%2F0912-sort-an-array.rs)
| ❌
| [✔️](swift%2F0912-sort-an-array.swift)
| ❌
+[0347 - Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/) | ❌
| [✔️](c%2F0347-top-k-frequent-elements.c)
| [✔️](cpp%2F0347-top-k-frequent-elements.cpp)
| [✔️](csharp%2F0347-top-k-frequent-elements.cs)
| [✔️](dart%2F0347-top-k-frequent-elements.dart)
| [✔️](go%2F0347-top-k-frequent-elements.go)
| ❌
| [✔️](java%2F0347-top-k-frequent-elements.java)
| [✔️](javascript%2F0347-top-k-frequent-elements.js)
| [✔️](kotlin%2F0347-top-k-frequent-elements.kt)
| [✔️](python%2F0347-top-k-frequent-elements.py)
| [✔️](ruby%2F0347-top-k-frequent-elements.rb)
| [✔️](rust%2F0347-top-k-frequent-elements.rs)
| [✔️](scala%2F0347-top-k-frequent-elements.scala)
| [✔️](swift%2F0347-top-k-frequent-elements.swift)
| [✔️](typescript%2F0347-top-k-frequent-elements.ts)
+[0238 - Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/) | ❌
| [✔️](c%2F0238-product-of-array-except-self.c)
| [✔️](cpp%2F0238-product-of-array-except-self.cpp)
| [✔️](csharp%2F0238-product-of-array-except-self.cs)
| ❌
| [✔️](go%2F0238-product-of-array-except-self.go)
| ❌
| [✔️](java%2F0238-product-of-array-except-self.java)
| [✔️](javascript%2F0238-product-of-array-except-self.js)
| [✔️](kotlin%2F0238-product-of-array-except-self.kt)
| [✔️](python%2F0238-product-of-array-except-self.py)
| [✔️](ruby%2F0238-product-of-array-except-self.rb)
| [✔️](rust%2F0238-product-of-array-except-self.rs)
| ❌
| [✔️](swift%2F0238-product-of-array-except-self.swift)
| [✔️](typescript%2F0238-product-of-array-except-self.ts)
+[0036 - Valid Sudoku](https://leetcode.com/problems/valid-sudoku/) | ❌
| [✔️](c%2F0036-valid-sudoku.c)
| [✔️](cpp%2F0036-valid-sudoku.cpp)
| [✔️](csharp%2F0036-valid-sudoku.cs)
| [✔️](dart%2F0036-valid-sudoku.dart)
| [✔️](go%2F0036-valid-sudoku.go)
| ❌
| [✔️](java%2F0036-valid-sudoku.java)
| [✔️](javascript%2F0036-valid-sudoku.js)
| [✔️](kotlin%2F0036-valid-sudoku.kt)
| [✔️](python%2F0036-valid-sudoku.py)
| [✔️](ruby%2F0036-valid-sudoku.rb)
| [✔️](rust%2F0036-valid-sudoku.rs)
| [✔️](scala%2F0036-valid-sudoku.scala)
| ❌
| [✔️](typescript%2F0036-valid-sudoku.ts)
+[0271 - Encode and Decode Strings](https://leetcode.com/problems/encode-and-decode-strings/) | ❌
| ❌
| [✔️](cpp%2F0271-encode-and-decode-strings.cpp)
| [✔️](csharp%2F0271-encode-and-decode-strings.cs)
| ❌
| [✔️](go%2F0271-encode-and-decode-strings.go)
| ❌
| [✔️](java%2F0271-encode-and-decode-strings.java)
| [✔️](javascript%2F0271-encode-and-decode-strings.js)
| [✔️](kotlin%2F0271-encode-and-decode-strings.kt)
| [✔️](python%2F0271-encode-and-decode-strings.py)
| [✔️](ruby%2F0271-encode-and-decode-strings.rb)
| [✔️](rust%2F0271-encode-and-decode-strings.rs)
| ❌
| [✔️](swift%2F0271-encode-and-decode-strings.swift)
| [✔️](typescript%2F0271-encode-and-decode-strings.ts)
+[0128 - Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/) | ❌
| [✔️](c%2F0128-longest-consecutive-sequence.c)
| [✔️](cpp%2F0128-longest-consecutive-sequence.cpp)
| [✔️](csharp%2F0128-longest-consecutive-sequence.cs)
| ❌
| [✔️](go%2F0128-longest-consecutive-sequence.go)
| ❌
| [✔️](java%2F0128-longest-consecutive-sequence.java)
| [✔️](javascript%2F0128-longest-consecutive-sequence.js)
| [✔️](kotlin%2F0128-longest-consecutive-sequence.kt)
| [✔️](python%2F0128-longest-consecutive-sequence.py)
| [✔️](ruby%2F0128-longest-consecutive-sequence.rb)
| [✔️](rust%2F0128-longest-consecutive-sequence.rs)
| ❌
| [✔️](swift%2F0128-longest-consecutive-sequence.swift)
| [✔️](typescript%2F0128-longest-consecutive-sequence.ts)
+[0075 - Sort Colors](https://leetcode.com/problems/sort-colors/) | ❌
| [✔️](c%2F0075-sort-colors.c)
| [✔️](cpp%2F0075-Sort-colors.cpp)
| [✔️](csharp%2F0075-sort-colors.cs)
| ❌
| [✔️](go%2F0075-sort-colors.go)
| ❌
| [✔️](java%2F0075-sort-colors.java)
| [✔️](javascript%2F0075-sort-colors.js)
| [✔️](kotlin%2F0075-sort-colors.kt)
| [✔️](python%2F0075-sort-colors.py)
| ❌
| [✔️](rust%2F0075-sort-colors.rs)
| ❌
| [✔️](swift%2F0075-sort-colors.swift)
| [✔️](typescript%2F0075-sort-colors.ts)
+[0535 - Encode and Decode TinyURL](https://leetcode.com/problems/encode-and-decode-tinyurl/) | ❌
| [✔️](c%2F0535-encode-and-decode-tinyurl.c)
| [✔️](cpp%2F0535-encode-and-decode-tinyurl.cpp)
| [✔️](csharp%2F0535-encode-and-decode-tinyurl.cs)
| ❌
| [✔️](go%2F0535-encode-and-decode-tinyurl.go)
| ❌
| [✔️](java%2F0535-encode-and-decode-tinyurl.java)
| [✔️](javascript%2F0535-encode-and-decode-tinyurl.js)
| [✔️](kotlin%2F0535-encode-and-decode-tinyurl.kt)
| [✔️](python%2F0535-encode-and-decode-tinyurl.py)
| ❌
| [✔️](rust%2F0535-encode-and-decode-tinyURL.rs)
| ❌
| [✔️](swift%2F0535-Encode-and-Decode-TinyURL.Swift)
| [✔️](typescript%2F0535-encode-and-decode-tinyurl.ts)
+[0554 - Brick Wall](https://leetcode.com/problems/brick-wall/) | ❌
| [✔️](c%2F0554-Brick-Wall.c)
| [✔️](cpp%2F0554-brick-wall.cpp)
| [✔️](csharp%2F0554-brick-wall.cs)
| ❌
| [✔️](go%2F0554-brick-wall.go)
| ❌
| [✔️](java%2F0554-brick-wall.java)
| [✔️](javascript%2F0554-brick-wall.js)
| [✔️](kotlin%2F0554-brick-wall.kt)
| [✔️](python%2F0554-brick-wall.py)
| ❌
| [✔️](rust%2F0554-brick-wall.rs)
| ❌
| ❌
| [✔️](typescript%2F0554-brick-wall.ts)
+[0122 - Best Time to Buy And Sell Stock II](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/) | ❌
| [✔️](c%2F0122-best-time-to-buy-and-sell-stock-ii.c)
| [✔️](cpp%2F0122-best-time-to-buy-and-sell-stock-ii.cpp)
| ❌
| ❌
| [✔️](go%2F0122-best-time-to-buy-and-sell-stock-ii.go)
| ❌
| [✔️](java%2F0122-best-time-to-buy-and-sell-stock-II.java)
| [✔️](javascript%2F0122-best-time-to-buy-and-sell-stock-ii.js)
| [✔️](kotlin%2F0122-best-time-to-buy-and-sell-stock-ii.kt)
| [✔️](python%2F0122-best-time-to-buy-and-sell-stock-ii.py)
| ❌
| [✔️](rust%2F0122-best-time-to-buy-and-sell-stock-ii.rs)
| ❌
| ❌
| ❌
+[0560 - Subarray Sum Equals K](https://leetcode.com/problems/subarray-sum-equals-k/) | ❌
| [✔️](c%2F0560-subarray-sum-equals-k.c)
| [✔️](cpp%2F0560-subarray-sum-equals-k.cpp)
| [✔️](csharp%2F0560-subarray-sum-equals-k.cs)
| ❌
| [✔️](go%2F0560-subarray-sum-equals-k.go)
| ❌
| [✔️](java%2F0560-subarray-sum-equals-k.java)
| [✔️](javascript%2F0560-subarray-sum-equals-k.js)
| [✔️](kotlin%2F0560-subarray-sum-equals-k.kt)
| [✔️](python%2F0560-subarray-sum-equals-k.py)
| ❌
| [✔️](rust%2F0560-subarray-sum-equals-k.rs)
| ❌
| [✔️](swift%2F0560-subarray-sum-equals-k.swift)
| [✔️](typescript%2F0560-subarray-sum-equals-k.ts)
+[1930 - Unique Length 3 Palindromic Subsequences](https://leetcode.com/problems/unique-length-3-palindromic-subsequences/) | ❌
| [✔️](c%2F1930-unique-length-3-palindromic-subsequences.c)
| [✔️](cpp%2F1930-unique-length-3-palindromic-subsequences.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1930-unique-length-3-palindromic-subsequences.java)
| [✔️](javascript%2F1930-unique-length-3-palindromic-subsequences.js)
| [✔️](kotlin%2F1930-unique-length-3-palindromic-subsequences.kt)
| [✔️](python%2F1930-unique-length-3-palindromic-subsequences.py)
| ❌
| [✔️](rust%2F1930-unique-length-3-palindromic-subsequences.rs)
| ❌
| ❌
| [✔️](typescript%2F1930-unique-length-3-palindromic-subsequences.ts)
+[1963 - Minimum Number of Swaps to Make The String Balanced](https://leetcode.com/problems/minimum-number-of-swaps-to-make-the-string-balanced/) | ❌
| [✔️](c%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.c)
| [✔️](cpp%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.cpp)
| [✔️](csharp%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.cs)
| ❌
| [✔️](go%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.go)
| ❌
| [✔️](java%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.java)
| [✔️](javascript%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.js)
| [✔️](kotlin%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.kt)
| [✔️](python%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.py)
| ❌
| [✔️](rust%2F1963-minimum-number-of-swaps-to-make-the-string-balanced.rs)
| ❌
| ❌
| ❌
+[2001 - Number of Pairs of Interchangeable Rectangles](https://leetcode.com/problems/number-of-pairs-of-interchangeable-rectangles/) | ❌
| [✔️](c%2F2001-number-of-pairs-of-interchangeable-rectangles.c)
| [✔️](cpp%2F2001-number-of-pairs-of-interchangeable-rectangles.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2001-number-of-pairs-of-interchangeable-rectangles.java)
| [✔️](javascript%2F2001-number-of-pairs-of-interchangeable-rectangles.js)
| [✔️](kotlin%2F2001-number-of-pairs-of-interchangeable-rectangles.kt)
| [✔️](python%2F2001-number-of-pairs-of-interchangeable-rectangles.py)
| ❌
| [✔️](rust%2F2001-number-of-pairs-of-interchangeable-rectangles.rs)
| ❌
| ❌
| ❌
+[2002 - Maximum Product of The Length of Two Palindromic Subsequences](https://leetcode.com/problems/maximum-product-of-the-length-of-two-palindromic-subsequences/) | ❌
| [✔️](c%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.c)
| [✔️](cpp%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.cpp)
| [✔️](csharp%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.cs)
| ❌
| [✔️](go%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.go)
| ❌
| [✔️](java%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.java)
| [✔️](javascript%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.js)
| [✔️](kotlin%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.kt)
| [✔️](python%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.py)
| ❌
| [✔️](rust%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.rs)
| ❌
| ❌
| [✔️](typescript%2F2002-maximum-product-of-the-length-of-two-palindromic-subsequences.ts)
+[2017 - Grid Game](https://leetcode.com/problems/grid-game/) | ❌
| ❌
| [✔️](cpp%2F2017-grid-game.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2017-grid-game.java)
| [✔️](javascript%2F2017-grid-game.js)
| [✔️](kotlin%2F2017-grid-game.kt)
| [✔️](python%2F2017-grid-game.py)
| ❌
| [✔️](rust%2F2017-grid-game.rs)
| ❌
| ❌
| ❌
+[0438 - Find All Anagrams in a String](https://leetcode.com/problems/find-all-anagrams-in-a-string/) | ❌
| [✔️](c%2F0438-find-all-anagrams-in-a-string.c)
| [✔️](cpp%2F0438-find-all-anagrams-in-a-string.cpp)
| [✔️](csharp%2F0438-find-all-anagrams-in-a-string.cs)
| ❌
| [✔️](go%2F0438-find-all-anagrams-in-a-string.go)
| ❌
| [✔️](java%2F0438-find-all-anagrams-in-a-string.java)
| [✔️](javascript%2F0438-find-all-anagrams-in-a-string.js)
| [✔️](kotlin%2F0438-find-all-anagrams-in-a-string.kt)
| [✔️](python%2F0438-find-all-anagrams-in-a-string.py)
| ❌
| [✔️](rust%2F0438-find-all-anagrams-in-a-string.rs)
| ❌
| ❌
| [✔️](typescript%2F0438-find-all-anagrams-in-a-string.ts)
+[0028 - Find The Index of The First Occurrence in a String](https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/) | ❌
| [✔️](c%2F0028-find-the-index-of-the-first-occurrence-in-a-string.c)
| [✔️](cpp%2F0028-find-the-index-of-the-first-occurrence-in-a-string.cpp)
| [✔️](csharp%2F0028-find-the-index-of-the-first-occurrence-in-a-string.cs)
| [✔️](dart%2F0028-find-the-index-of-the-first-occurrence-in-a-string.dart)
| [✔️](go%2F0028-find-the-index-of-the-first-occurrence-in-a-string.go)
| ❌
| [✔️](java%2F0028-find-the-index-of-the-first-occurrence-in-a-string.java)
| [✔️](javascript%2F0028-find-the-index-of-the-first-occurrence-in-a-string.js)
| [✔️](kotlin%2F0028-find-the-index-of-the-first-occurrence-in-a-string.kt)
| [✔️](python%2F0028-find-the-index-of-the-first-occurrence-in-a-string.py)
| ❌
| [✔️](rust%2F0028-find-the-index-of-the-first-occurrence-in-a-string.rs)
| ❌
| ❌
| ❌
+[0280 - Wiggle Sort](https://leetcode.com/problems/wiggle-sort/) | ❌
| ❌
| [✔️](cpp%2F0280-wiggle-sort.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0280-wiggle-sort.java)
| ❌
| [✔️](kotlin%2F0280-wiggle-sort.kt)
| [✔️](python%2F0280-wiggle-sort.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0179 - Largest Number](https://leetcode.com/problems/largest-number/) | ❌
| [✔️](c%2F0179-largest-number.c)
| [✔️](cpp%2F0179-largest-number.cpp)
| [✔️](csharp%2F0179-largest-number.cs)
| ❌
| [✔️](go%2F0179-largest-number.go)
| ❌
| [✔️](java%2F0179-largest-number.java)
| [✔️](javascript%2F0179-largest-number.js)
| [✔️](kotlin%2F0179-largest-number.kt)
| [✔️](python%2F0179-largest-number.py)
| [✔️](ruby%2F0179-largest-number.rb)
| [✔️](rust%2F0179-largest-number.rs)
| [✔️](scala%2F0179-largest-number.scala)
| [✔️](swift%2F0179-largest-number.swift)
| [✔️](typescript%2F0179-largest-number.ts)
+[0523 - Continuous Subarray Sum](https://leetcode.com/problems/continuous-subarray-sum/) | ❌
| [✔️](c%2F0523-continuous-subarray-sum.c)
| [✔️](cpp%2F0523-continuous-subarray-sum.cpp)
| [✔️](csharp%2F0523-continuous-subarray-sum.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0523-continuous-subarray-sum.java)
| [✔️](javascript%2F0523-continuous-subarray-sum.js)
| [✔️](kotlin%2F0523-continuous-subarray-sum.kt)
| [✔️](python%2F0523-continuous-subarray-sum.py)
| ❌
| [✔️](rust%2F0523-continuous-subarray-sum.rs)
| ❌
| ❌
| ❌
+[0838 - Push Dominoes](https://leetcode.com/problems/push-dominoes/) | ❌
| ❌
| [✔️](cpp%2F0838-push-dominoes.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0838-push-dominoes.java)
| [✔️](javascript%2F0838-push-dominoes.js)
| [✔️](kotlin%2F0838-push-dominoes.kt)
| [✔️](python%2F0838-push-dominoes.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0838-push-dominoes.ts)
+[0187 - Repeated DNA Sequences](https://leetcode.com/problems/repeated-dna-sequences/) | ❌
| ❌
| [✔️](cpp%2F0187-repeated-dna-sequences.cpp)
| [✔️](csharp%2F0187-repeated-dna-sequences.cs)
| ❌
| [✔️](go%2F0187-repeated-dna-sequences.go)
| ❌
| [✔️](java%2F0187-repeated-dna-sequences.java)
| [✔️](javascript%2F0187-repeated-dna-sequences.js)
| [✔️](kotlin%2F0187-repeated-dna-sequences.kt)
| [✔️](python%2F0187-repeated-dna-sequences.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0187-repeated-dna-sequences.ts)
+[0380 - Insert Delete Get Random O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/) | ❌
| ❌
| [✔️](cpp%2F0380-insert-delete-getrandom-o1.cpp)
| ❌
| ❌
| [✔️](go%2F0380-insert-delete-getrandom-o1.go)
| ❌
| [✔️](java%2F0380-insert-delete-getrandom-o1.java)
| [✔️](javascript%2F0380-insert-delete-getrandom-o1.js)
| [✔️](kotlin%2F0380-insert-delete-getrandom-o1.kt)
| [✔️](python%2F0380-insert-delete-getrandom-o1.py)
| ❌
| [✔️](rust%2F0380-insert-delete-getrandom-o1.rs)
| ❌
| [✔️](swift%2F0380-insert-delete-getrandom-o1.swift)
| [✔️](typescript%2F0380-insert-delete-getrandom-o1.ts)
+[1461 - Check if a String Contains all Binary Codes of Size K](https://leetcode.com/problems/check-if-a-string-contains-all-binary-codes-of-size-k/) | ❌
| ❌
| [✔️](cpp%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.java)
| [✔️](javascript%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.js)
| [✔️](kotlin%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.kt)
| [✔️](python%2F1461-check-if-a-string-contains-all-binary-codes-of-size-k.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0304 - Range Sum Query 2D Immutable](https://leetcode.com/problems/range-sum-query-2d-immutable/) | ❌
| ❌
| [✔️](cpp%2F0304-range-sum-query-2d-immutable.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0304-range-sum-query-2d-immutable.java)
| [✔️](javascript%2F0304-range-sum-query-2d-immutable.js)
| [✔️](kotlin%2F0304-range-sum-query-2d-immutable.kt)
| [✔️](python%2F0304-range-sum-query-2d-immutable.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0304-range-sum-query-2d-immutable.swift)
| ❌
+[0665 - Non Decreasing Array](https://leetcode.com/problems/non-decreasing-array/) | ❌
| [✔️](c%2F0665-non-decreasing-array.c)
| [✔️](cpp%2F0665-non-decreasing-array.cpp)
| [✔️](csharp%2F0665-non-decreasing-array.cs)
| ❌
| [✔️](go%2F0665-non-decreasing-array.go)
| ❌
| [✔️](java%2F0665-non-decreasing-array.java)
| [✔️](javascript%2F0665-non-decreasing-array.js)
| [✔️](kotlin%2F0665-non-decreasing-array.kt)
| [✔️](python%2F0665-non-decreasing-array.py)
| ❌
| ❌
| [✔️](scala%2F0665-non-decreasing-array.scala)
| ❌
| [✔️](typescript%2F0665-non-decreasing-array.ts)
+[0041 - First Missing Positive](https://leetcode.com/problems/first-missing-positive/) | ❌
| [✔️](c%2F0041-first-missing-positive.c)
| [✔️](cpp%2F0041-first-missing-positive.cpp)
| ❌
| ❌
| [✔️](go%2F0041-first-missing-positive.go)
| ❌
| [✔️](java%2F0041-first-missing-positive.java)
| [✔️](javascript%2F0041-first-missing-positive.js)
| [✔️](kotlin%2F0041-first-missing-positive.kt)
| [✔️](python%2F0041-first-missing-positive.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0041-first-missing-positive.ts)
+[1822 - Sign of An Array](https://leetcode.com/problems/sign-of-the-product-of-an-array/) | ❌
| [✔️](c%2F1822-sign-of-the-product-of-an-array.c)
| [✔️](cpp%2F1822-sign-of-the-product-of-an-array.cpp)
| ❌
| ❌
| [✔️](go%2F1822-sign-of-the-product-of-an-array.go)
| ❌
| [✔️](java%2F1822-sign-of-the-product-of-an-array.java)
| [✔️](javascript%2F1822-sign-of-the-product-of-an-array.js)
| [✔️](kotlin%2F1822-sign-of-the-product-of-an-array.kt)
| [✔️](python%2F1822-sign-of-the-product-of-an-array.py)
| ❌
| [✔️](rust%2F1822-sign-of-the-product-of-an-array.rs)
| ❌
| ❌
| [✔️](typescript%2F1822-sign-of-the-product-of-an-array.ts)
+[2215 - Find the Difference of Two Arrays](https://leetcode.com/problems/find-the-difference-of-two-arrays/) | ❌
| [✔️](c%2F2215-find-the-difference-of-two-arrays.c)
| [✔️](cpp%2F2215-find-the-difference-of-two-arrays.cpp)
| [✔️](csharp%2F2215-find-the-difference-of-two-arrays.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F2215-find-the-difference-of-two-arrays.java)
| [✔️](javascript%2F2215-find-the-difference-of-two-arrays.js)
| [✔️](kotlin%2F2215-find-the-difference-of-two-arrays.kt)
| [✔️](python%2F2215-find-the-difference-of-two-arrays.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F2215-find-the-difference-of-two-arrays.ts)
+[1603 - Design Parking System](https://leetcode.com/problems/design-parking-system/) | ❌
| ❌
| [✔️](cpp%2F1603-design-parking-system.cpp)
| [✔️](csharp%2F1603-design-parking-system.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1603-design-parking-system.java)
| [✔️](javascript%2F1603-design-parking-system.js)
| [✔️](kotlin%2F1603-design-parking-system.kt)
| [✔️](python%2F1603-design-parking-system.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2348 - Number of Zero-Filled Subarrays](https://leetcode.com/problems/number-of-zero-filled-subarrays/) | ❌
| ❌
| [✔️](cpp%2F2348-number-of-zero-filled-subarrays.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2348-number-of-zero-filled-subarrays.java)
| [✔️](javascript%2F2348-number-of-zero-filled-subarrays.js)
| [✔️](kotlin%2F2348-number-of-zero-filled-subarrays.kt)
| [✔️](python%2F2348-number-of-zero-filled-subarrays.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2405 - Optimal Partition of String](https://leetcode.com/problems/optimal-partition-of-string/) | ❌
| ❌
| [✔️](cpp%2F2405-optimal-partition-of-string.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2405-optimal-partition-of-string.java)
| ❌
| [✔️](kotlin%2F2405-optimal-partition-of-string.kt)
| [✔️](python%2F2405-optimal-partition-of-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1396 - Design Underground System](https://leetcode.com/problems/design-underground-system/) | ❌
| ❌
| ❌
| [✔️](csharp%2F1396-design-underground-system.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1396-design-underground-system.java)
| [✔️](javascript%2F1396-design-underground-system.js)
| [✔️](kotlin%2F1396-design-underground-system.kt)
| [✔️](python%2F1396-design-underground-system.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2483 - Minimum Penalty for a Shop](https://leetcode.com/problems/minimum-penalty-for-a-shop/) | ❌
| ❌
| [✔️](cpp%2F2483-minimum-penalty-for-a-shop.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2483-minimum-penalty-for-a-shop.java)
| ❌
| [✔️](kotlin%2F2483-minimum-penalty-for-a-shop.kt)
| [✔️](python%2F2483-minimum-penalty-for-a-shop.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0068 - Text Justification](https://leetcode.com/problems/text-justification/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0068-text-justification.java)
| ❌
| [✔️](kotlin%2F0068-text-justification.kt)
| [✔️](python%2F0068-text-justification.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2306 - Naming a Company](https://leetcode.com/problems/naming-a-company/) | ❌
| ❌
| [✔️](cpp%2F2306-naming-a-company.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2306-naming-a-company.java)
| [✔️](javascript%2F2306-naming-a-company.js)
| [✔️](kotlin%2F2306-naming-a-company.kt)
| [✔️](python%2F2306-naming-a-company.py)
| ❌
| ❌
| ❌
| ❌
| ❌
### Two Pointers
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0125 - Valid Palindrome](https://leetcode.com/problems/valid-palindrome/) | [✔️](c%2F0125-valid-palindrome.c)
| [✔️](cpp%2F0125-valid-palindrome.cpp)
| [✔️](csharp%2F0125-valid-palindrome.cs)
| [✔️](dart%2F0125-valid-palindrome.dart)
| [✔️](go%2F0125-valid-palindrome.go)
| [✔️](java%2F0125-valid-palindrome.java)
| [✔️](javascript%2F0125-valid-palindrome.js)
| [✔️](kotlin%2F0125-valid-palindrome.kt)
| [✔️](python%2F0125-valid-palindrome.py)
| [✔️](ruby%2F0125-valid-palindrome.rb)
| [✔️](rust%2F0125-valid-palindrome.rs)
| ❌
| [✔️](swift%2F0125-valid-palindrome.swift)
| [✔️](typescript%2F0125-valid-palindrome.ts)
-[0680 - Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/) | [✔️](c%2F0680-valid-palindrome-ii.c)
| [✔️](cpp%2F0680-valid-palindrome-ii.cpp)
| [✔️](csharp%2F0680-valid-palindrome-ii.cs)
| ❌
| [✔️](go%2F0680-valid-palindrome-ii.go)
| [✔️](java%2F0680-valid-palindrome-ii.java)
| [✔️](javascript%2F0680-valid-palindrome-ii.js)
| [✔️](kotlin%2F0680-valid-palindrome-ii.kt)
| [✔️](python%2F0680-valid-palindrome-ii.py)
| ❌
| [✔️](rust%2F0680-valid-palindrome-II.rs)
| ❌
| ❌
| [✔️](typescript%2F0680-valid-palindrome-ii.ts)
-[1984 - Minimum Difference Between Highest And Lowest of K Scores](https://leetcode.com/problems/minimum-difference-between-highest-and-lowest-of-k-scores/) | ❌
| [✔️](cpp%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.cpp)
| ❌
| ❌
| [✔️](go%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.go)
| [✔️](java%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.java)
| [✔️](javascript%2F1984-Minimum-Difference-Between-Highest-and-Lowest-of-K-Scores.js)
| [✔️](kotlin%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.kt)
| [✔️](python%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.py)
| ❌
| [✔️](rust%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.rs)
| ❌
| ❌
| [✔️](typescript%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.ts)
-[0344 - Reverse String](https://leetcode.com/problems/reverse-string/) | [✔️](c%2F0344-reverse-string.c)
| [✔️](cpp%2F0344-Reverse-String.cpp)
| ❌
| ❌
| [✔️](go%2F0344-reverse-string.go)
| [✔️](java%2F0344-reverse-string.java)
| [✔️](javascript%2F0344-reverse-string.js)
| [✔️](kotlin%2F0344-reverse-string.kt)
| [✔️](python%2F0344-reverse-string.py)
| ❌
| [✔️](rust%2F0344-reverse-string.rs)
| ❌
| [✔️](swift%2F0344-reverse-string.swift)
| [✔️](typescript%2F0344-reverse-string.ts)
-[0088 - Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/) | [✔️](c%2F0088-merge-sorted-array.c)
| [✔️](cpp%2F0088-Merge-sorted-array.cpp)
| ❌
| ❌
| [✔️](go%2F0088-merge-sorted-array.go)
| [✔️](java%2F0088-merge-sorted-array.java)
| [✔️](javascript%2F0088-merge-sorted-array.js)
| [✔️](kotlin%2F0088-merge-sorted-array.kt)
| [✔️](python%2F0088-merge-sorted-array.py)
| ❌
| [✔️](rust%2F0088-merge-sorted-array.rs)
| ❌
| ❌
| [✔️](typescript%2F0088-merge-sorted-array.ts)
-[0283 - Move Zeroes](https://leetcode.com/problems/move-zeroes/) | [✔️](c%2F0283-move-zeroes.c)
| [✔️](cpp%2F0283-move-zeroes.cpp)
| [✔️](csharp%2F0283-move-zeroes.cs)
| ❌
| [✔️](go%2F0283-move-zeroes.go)
| [✔️](java%2F0283-move-zeroes.java)
| [✔️](javascript%2F0283-move-zeroes.js)
| [✔️](kotlin%2F0283-move-zeroes.kt)
| [✔️](python%2F0283-move-zeroes.py)
| ❌
| [✔️](rust%2F0283-move-zeroes.rs)
| ❌
| [✔️](swift%2F0283-Move-Zeroes.Swift)
| [✔️](typescript%2F0283-move-zeroes.ts)
-[0026 - Remove Duplicates From Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/) | ❌
| [✔️](cpp%2F0026-remove-duplicates-from-sorted-array.cpp)
| ❌
| ❌
| [✔️](go%2F0026-remove-duplicates-from-sorted-array.go)
| [✔️](java%2F0026-remove-duplicates-from-sorted-array.java)
| [✔️](javascript%2F0026-remove-duplicates-from-sorted-array.js)
| [✔️](kotlin%2F0026-remove-duplicates-from-sorted-array.kt)
| [✔️](python%2F0026-remove-duplicates-from-sorted-array.py)
| ❌
| [✔️](rust%2F0026-remove-duplicates-from-sorted-array.rs)
| ❌
| [✔️](swift%2F0026-Remove-Duplicates-from-Sorted-Array.swift)
| [✔️](typescript%2F0026-remove-duplicates-from-sorted-array.ts)
-[0167 - Two Sum II Input Array Is Sorted](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/) | [✔️](c%2F0167-two-sum-ii-input-array-is-sorted.c)
| [✔️](cpp%2F0167-two-sum-ii-input-array-is-sorted.cpp)
| [✔️](csharp%2F0167-two-sum-ii-input-array-is-sorted.cs)
| ❌
| [✔️](go%2F0167-two-sum-ii-input-array-is-sorted.go)
| [✔️](java%2F0167-two-sum-ii-input-array-is-sorted.java)
| [✔️](javascript%2F0167-two-sum-ii-input-array-is-sorted.js)
| [✔️](kotlin%2F0167-two-sum-ii-input-array-is-sorted.kt)
| [✔️](python%2F0167-two-sum-ii-input-array-is-sorted.py)
| [✔️](ruby%2F0167-two-sum-ii-input-array-is-sorted.rb)
| [✔️](rust%2F0167-two-sum-ii-input-array-is-sorted.rs)
| ❌
| [✔️](swift%2F0167-two-sum-ii-input-array-is-sorted.swift)
| [✔️](typescript%2F0167-two-sum-ii-input-array-is-sorted.ts)
-[0015 - 3Sum](https://leetcode.com/problems/3sum/) | [✔️](c%2F0015-3sum.c)
| [✔️](cpp%2F0015-3sum.cpp)
| [✔️](csharp%2F0015-3sum.cs)
| ❌
| [✔️](go%2F0015-3sum.go)
| [✔️](java%2F0015-3sum.java)
| [✔️](javascript%2F0015-3sum.js)
| [✔️](kotlin%2F0015-3sum.kt)
| [✔️](python%2F0015-3sum.py)
| [✔️](ruby%2F0015-3sum.rb)
| [✔️](rust%2F0015-3sum.rs)
| [✔️](scala%2F0015-3sum.scala)
| [✔️](swift%2F0015-3sum.swift)
| [✔️](typescript%2F0015-3sum.ts)
-[0018 - 4Sum](https://leetcode.com/problems/4sum/) | ❌
| [✔️](cpp%2F0018-4sum.cpp)
| ❌
| ❌
| [✔️](go%2F0018-4Sum.go)
| ❌
| [✔️](javascript%2F0018-4sum.js)
| ❌
| [✔️](python%2F0018-4sum.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0018-4sum.ts)
-[0011 - Container With Most Water](https://leetcode.com/problems/container-with-most-water/) | [✔️](c%2F0011-container-with-most-water.c)
| [✔️](cpp%2F0011-container-with-most-water.cpp)
| [✔️](csharp%2F0011-container-with-most-water.cs)
| [✔️](dart%2F0011-container-with-most-water.dart)
| [✔️](go%2F0011-container-with-most-water.go)
| [✔️](java%2F0011-container-with-most-water.java)
| [✔️](javascript%2F0011-container-with-most-water.js)
| [✔️](kotlin%2F0011-container-with-most-water.kt)
| [✔️](python%2F0011-container-with-most-water.py)
| [✔️](ruby%2F0011-container-with-most-water.rb)
| [✔️](rust%2F0011-container-with-most-water.rs)
| [✔️](scala%2F0011-container-with-most-water.scala)
| [✔️](swift%2F0011-container-with-most-water.swift)
| [✔️](typescript%2F0011-container-with-most-water.ts)
-[1498 - Number of Subsequences That Satisfy The Given Sum Condition](https://leetcode.com/problems/number-of-subsequences-that-satisfy-the-given-sum-condition/) | ❌
| [✔️](cpp%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0189 - Rotate Array](https://leetcode.com/problems/rotate-array/) | ❌
| [✔️](cpp%2F0189-rotate-array.cpp)
| ❌
| ❌
| [✔️](go%2F0189-rotate-array.go)
| [✔️](java%2F0189-rotate-array.java)
| ❌
| ❌
| [✔️](python%2F0189-rotate-array.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0189-rotate-array.ts)
-[1968 - Array With Elements Not Equal to Average of Neighbors](https://leetcode.com/problems/array-with-elements-not-equal-to-average-of-neighbors/) | [✔️](c%2F1968-array-with-elements-not-equal-to-average-of-neighbors.c)
| [✔️](cpp%2F1968-array-with-elements-not-equal-to-average-of-neighbors.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0881 - Boats to Save People](https://leetcode.com/problems/boats-to-save-people/) | [✔️](c%2F0881-boats-to-save-people.c)
| [✔️](cpp%2F0881-boats-to-save-people.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0881-boats-to-save-people.js)
| [✔️](kotlin%2F0881-boats-to-save-people.kt)
| [✔️](python%2F0881-boats-to-save-people.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0881-boats-to-save-people.ts)
-[0042 - Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/) | [✔️](c%2F0042-trapping-rain-water.c)
| [✔️](cpp%2F0042-trapping-rain-water.cpp)
| [✔️](csharp%2F0042-trapping-rain-water.cs)
| ❌
| [✔️](go%2F0042-trapping-rain-water.go)
| [✔️](java%2F0042-trapping-rain-water.java)
| [✔️](javascript%2F0042-trapping-rain-water.js)
| [✔️](kotlin%2F0042-trapping-rain-water.kt)
| [✔️](python%2F0042-trapping-rain-water.py)
| [✔️](ruby%2F0042-trapping-rain-water.rb)
| [✔️](rust%2F0042-trapping-rain-water.rs)
| ❌
| [✔️](swift%2F0042-trapping-rain-water.swift)
| [✔️](typescript%2F0042-trapping-rain-water.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0125 - Valid Palindrome](https://leetcode.com/problems/valid-palindrome/) | ❌
| [✔️](c%2F0125-valid-palindrome.c)
| [✔️](cpp%2F0125-valid-palindrome.cpp)
| [✔️](csharp%2F0125-valid-palindrome.cs)
| [✔️](dart%2F0125-valid-palindrome.dart)
| [✔️](go%2F0125-valid-palindrome.go)
| ❌
| [✔️](java%2F0125-valid-palindrome.java)
| [✔️](javascript%2F0125-valid-palindrome.js)
| [✔️](kotlin%2F0125-valid-palindrome.kt)
| [✔️](python%2F0125-valid-palindrome.py)
| [✔️](ruby%2F0125-valid-palindrome.rb)
| [✔️](rust%2F0125-valid-palindrome.rs)
| [✔️](scala%2F0125-valid-palindrome.scala)
| [✔️](swift%2F0125-valid-palindrome.swift)
| [✔️](typescript%2F0125-valid-palindrome.ts)
+[0680 - Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/) | ❌
| [✔️](c%2F0680-valid-palindrome-ii.c)
| [✔️](cpp%2F0680-valid-palindrome-ii.cpp)
| [✔️](csharp%2F0680-valid-palindrome-ii.cs)
| ❌
| [✔️](go%2F0680-valid-palindrome-ii.go)
| ❌
| [✔️](java%2F0680-valid-palindrome-ii.java)
| [✔️](javascript%2F0680-valid-palindrome-ii.js)
| [✔️](kotlin%2F0680-valid-palindrome-ii.kt)
| [✔️](python%2F0680-valid-palindrome-ii.py)
| ❌
| [✔️](rust%2F0680-valid-palindrome-II.rs)
| ❌
| ❌
| [✔️](typescript%2F0680-valid-palindrome-ii.ts)
+[1984 - Minimum Difference Between Highest And Lowest of K Scores](https://leetcode.com/problems/minimum-difference-between-highest-and-lowest-of-k-scores/) | ❌
| [✔️](c%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.c)
| [✔️](cpp%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.cpp)
| [✔️](csharp%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.cs)
| ❌
| [✔️](go%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.go)
| ❌
| [✔️](java%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.java)
| [✔️](javascript%2F1984-Minimum-Difference-Between-Highest-and-Lowest-of-K-Scores.js)
| [✔️](kotlin%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.kt)
| [✔️](python%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.py)
| ❌
| [✔️](rust%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.rs)
| ❌
| ❌
| [✔️](typescript%2F1984-minimum-difference-between-highest-and-lowest-of-k-scores.ts)
+[1768 - Merge Strings Alternately](https://leetcode.com/problems/merge-strings-alternately/) | ❌
| ❌
| [✔️](cpp%2F1768-merge-strings-alternately.cpp)
| [✔️](csharp%2F1768-merge-strings-alternately.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1768-merge-strings-alternately.java)
| [✔️](javascript%2F1768-merge-strings-alternately.js)
| [✔️](kotlin%2F1768-merge-strings-alternately.kt)
| [✔️](python%2F1768-merge-strings-alternately.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F1768-merge-strings-alternately.ts)
+[0344 - Reverse String](https://leetcode.com/problems/reverse-string/) | ❌
| [✔️](c%2F0344-reverse-string.c)
| [✔️](cpp%2F0344-Reverse-String.cpp)
| [✔️](csharp%2F0344-reverse-string.cs)
| [✔️](dart%2F0344-reverse-string.dart)
| [✔️](go%2F0344-reverse-string.go)
| ❌
| [✔️](java%2F0344-reverse-string.java)
| [✔️](javascript%2F0344-reverse-string.js)
| [✔️](kotlin%2F0344-reverse-string.kt)
| [✔️](python%2F0344-reverse-string.py)
| ❌
| [✔️](rust%2F0344-reverse-string.rs)
| ❌
| [✔️](swift%2F0344-reverse-string.swift)
| [✔️](typescript%2F0344-reverse-string.ts)
+[0088 - Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/) | ❌
| [✔️](c%2F0088-merge-sorted-array.c)
| [✔️](cpp%2F0088-Merge-sorted-array.cpp)
| [✔️](csharp%2F0088-merge-sorted-array.cs)
| ❌
| [✔️](go%2F0088-merge-sorted-array.go)
| ❌
| [✔️](java%2F0088-merge-sorted-array.java)
| [✔️](javascript%2F0088-merge-sorted-array.js)
| [✔️](kotlin%2F0088-merge-sorted-array.kt)
| [✔️](python%2F0088-merge-sorted-array.py)
| ❌
| [✔️](rust%2F0088-merge-sorted-array.rs)
| ❌
| ❌
| [✔️](typescript%2F0088-merge-sorted-array.ts)
+[0283 - Move Zeroes](https://leetcode.com/problems/move-zeroes/) | ❌
| [✔️](c%2F0283-move-zeroes.c)
| [✔️](cpp%2F0283-move-zeroes.cpp)
| [✔️](csharp%2F0283-move-zeroes.cs)
| ❌
| [✔️](go%2F0283-move-zeroes.go)
| ❌
| [✔️](java%2F0283-move-zeroes.java)
| [✔️](javascript%2F0283-move-zeroes.js)
| [✔️](kotlin%2F0283-move-zeroes.kt)
| [✔️](python%2F0283-move-zeroes.py)
| ❌
| [✔️](rust%2F0283-move-zeroes.rs)
| ❌
| [✔️](swift%2F0283-Move-Zeroes.Swift)
| [✔️](typescript%2F0283-move-zeroes.ts)
+[0026 - Remove Duplicates From Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/) | ❌
| [✔️](c%2F0026-remove-duplicates-from-sorted-array.c)
| [✔️](cpp%2F0026-remove-duplicates-from-sorted-array.cpp)
| [✔️](csharp%2F0026-remove-duplicates-from-sorted-array.cs)
| ❌
| [✔️](go%2F0026-remove-duplicates-from-sorted-array.go)
| ❌
| [✔️](java%2F0026-remove-duplicates-from-sorted-array.java)
| [✔️](javascript%2F0026-remove-duplicates-from-sorted-array.js)
| [✔️](kotlin%2F0026-remove-duplicates-from-sorted-array.kt)
| [✔️](python%2F0026-remove-duplicates-from-sorted-array.py)
| ❌
| [✔️](rust%2F0026-remove-duplicates-from-sorted-array.rs)
| ❌
| [✔️](swift%2F0026-Remove-Duplicates-from-Sorted-Array.swift)
| [✔️](typescript%2F0026-remove-duplicates-from-sorted-array.ts)
+[0080 - Remove Duplicates From Sorted Array II](https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/) | ❌
| [✔️](c%2F0080-remove-duplicates-from-sorted-array-ii.c)
| [✔️](cpp%2F0080-remove-duplicates-from-sorted-array-ii.cpp)
| [✔️](csharp%2F0080-remove-duplicates-from-sorted-array-ii.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0080-remove-duplicates-from-sorted-array-ii.java)
| [✔️](javascript%2F0080-remove-duplicates-from-sorted-array-ii.js)
| [✔️](kotlin%2F0080-remove-duplicates-from-sorted-array-ii.kt)
| [✔️](python%2F0080-remove-duplicates-from-sorted-array-ii.py)
| ❌
| [✔️](rust%2F0080-remove-duplicates-from-sorted-array-ii.rs)
| ❌
| [✔️](swift%2F0080-remove-duplicates-from-sorted-array-ii.swift)
| ❌
+[0167 - Two Sum II Input Array Is Sorted](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/) | ❌
| [✔️](c%2F0167-two-sum-ii-input-array-is-sorted.c)
| [✔️](cpp%2F0167-two-sum-ii-input-array-is-sorted.cpp)
| [✔️](csharp%2F0167-two-sum-ii-input-array-is-sorted.cs)
| ❌
| [✔️](go%2F0167-two-sum-ii-input-array-is-sorted.go)
| ❌
| [✔️](java%2F0167-two-sum-ii-input-array-is-sorted.java)
| [✔️](javascript%2F0167-two-sum-ii-input-array-is-sorted.js)
| [✔️](kotlin%2F0167-two-sum-ii-input-array-is-sorted.kt)
| [✔️](python%2F0167-two-sum-ii-input-array-is-sorted.py)
| [✔️](ruby%2F0167-two-sum-ii-input-array-is-sorted.rb)
| [✔️](rust%2F0167-two-sum-ii-input-array-is-sorted.rs)
| [✔️](scala%2F0167-two-sum-ii-input-array-is-sorted.scala)
| [✔️](swift%2F0167-two-sum-ii-input-array-is-sorted.swift)
| [✔️](typescript%2F0167-two-sum-ii-input-array-is-sorted.ts)
+[0015 - 3Sum](https://leetcode.com/problems/3sum/) | ❌
| [✔️](c%2F0015-3sum.c)
| [✔️](cpp%2F0015-3sum.cpp)
| [✔️](csharp%2F0015-3sum.cs)
| [✔️](dart%2F0015-3sum.dart)
| [✔️](go%2F0015-3sum.go)
| ❌
| [✔️](java%2F0015-3sum.java)
| [✔️](javascript%2F0015-3sum.js)
| [✔️](kotlin%2F0015-3sum.kt)
| [✔️](python%2F0015-3sum.py)
| [✔️](ruby%2F0015-3sum.rb)
| [✔️](rust%2F0015-3sum.rs)
| [✔️](scala%2F0015-3sum.scala)
| [✔️](swift%2F0015-3sum.swift)
| [✔️](typescript%2F0015-3sum.ts)
+[0018 - 4Sum](https://leetcode.com/problems/4sum/) | ❌
| ❌
| [✔️](cpp%2F0018-4sum.cpp)
| ❌
| ❌
| [✔️](go%2F0018-4Sum.go)
| ❌
| [✔️](java%2F0018-4sum.java)
| [✔️](javascript%2F0018-4sum.js)
| [✔️](kotlin%2F0018-4sum.kt)
| [✔️](python%2F0018-4sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0018-4sum.swift)
| [✔️](typescript%2F0018-4sum.ts)
+[0011 - Container With Most Water](https://leetcode.com/problems/container-with-most-water/) | ❌
| [✔️](c%2F0011-container-with-most-water.c)
| [✔️](cpp%2F0011-container-with-most-water.cpp)
| [✔️](csharp%2F0011-container-with-most-water.cs)
| [✔️](dart%2F0011-container-with-most-water.dart)
| [✔️](go%2F0011-container-with-most-water.go)
| ❌
| [✔️](java%2F0011-container-with-most-water.java)
| [✔️](javascript%2F0011-container-with-most-water.js)
| [✔️](kotlin%2F0011-container-with-most-water.kt)
| [✔️](python%2F0011-container-with-most-water.py)
| [✔️](ruby%2F0011-container-with-most-water.rb)
| [✔️](rust%2F0011-container-with-most-water.rs)
| [✔️](scala%2F0011-container-with-most-water.scala)
| [✔️](swift%2F0011-container-with-most-water.swift)
| [✔️](typescript%2F0011-container-with-most-water.ts)
+[1498 - Number of Subsequences That Satisfy The Given Sum Condition](https://leetcode.com/problems/number-of-subsequences-that-satisfy-the-given-sum-condition/) | ❌
| ❌
| [✔️](cpp%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.java)
| ❌
| [✔️](kotlin%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.kt)
| [✔️](python%2F1498-number-of-subsequences-that-satisfy-the-given-sum-condition.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0189 - Rotate Array](https://leetcode.com/problems/rotate-array/) | ❌
| ❌
| [✔️](cpp%2F0189-rotate-array.cpp)
| ❌
| ❌
| [✔️](go%2F0189-rotate-array.go)
| ❌
| [✔️](java%2F0189-rotate-array.java)
| [✔️](javascript%2F0189-rotate-array.js)
| [✔️](kotlin%2F0189-rotate-array.kt)
| [✔️](python%2F0189-rotate-array.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0189-rotate-array.ts)
+[1968 - Array With Elements Not Equal to Average of Neighbors](https://leetcode.com/problems/array-with-elements-not-equal-to-average-of-neighbors/) | ❌
| [✔️](c%2F1968-array-with-elements-not-equal-to-average-of-neighbors.c)
| [✔️](cpp%2F1968-array-with-elements-not-equal-to-average-of-neighbors.cpp)
| ❌
| ❌
| [✔️](go%2F1968-array-with-elements-not-equal-to-average-of-neighbors.go)
| ❌
| [✔️](java%2F1968-array-with-elements-not-equal-to-average-of-neighbors.java)
| [✔️](javascript%2F1968-array-with-elements-not-equal-to-average-of-neighbors.js)
| [✔️](kotlin%2F1968-array-with-elements-not-equal-to-average-of-neighbors.kt)
| [✔️](python%2F1968-array-with-elements-not-equal-to-average-of-neighbors.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0881 - Boats to Save People](https://leetcode.com/problems/boats-to-save-people/) | ❌
| [✔️](c%2F0881-boats-to-save-people.c)
| [✔️](cpp%2F0881-boats-to-save-people.cpp)
| ❌
| ❌
| [✔️](go%2F0881-boats-to-save-people.go)
| ❌
| [✔️](java%2F0881-boats-to-save-people.java)
| [✔️](javascript%2F0881-boats-to-save-people.js)
| [✔️](kotlin%2F0881-boats-to-save-people.kt)
| [✔️](python%2F0881-boats-to-save-people.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0881-boats-to-save-people.swift)
| [✔️](typescript%2F0881-boats-to-save-people.ts)
+[0042 - Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/) | ❌
| [✔️](c%2F0042-trapping-rain-water.c)
| [✔️](cpp%2F0042-trapping-rain-water.cpp)
| [✔️](csharp%2F0042-trapping-rain-water.cs)
| [✔️](dart%2F0042-trapping-rain-water.dart)
| [✔️](go%2F0042-trapping-rain-water.go)
| ❌
| [✔️](java%2F0042-trapping-rain-water.java)
| [✔️](javascript%2F0042-trapping-rain-water.js)
| [✔️](kotlin%2F0042-trapping-rain-water.kt)
| [✔️](python%2F0042-trapping-rain-water.py)
| [✔️](ruby%2F0042-trapping-rain-water.rb)
| [✔️](rust%2F0042-trapping-rain-water.rs)
| ❌
| [✔️](swift%2F0042-trapping-rain-water.swift)
| [✔️](typescript%2F0042-trapping-rain-water.ts)
### Sliding Window
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0121 - Best Time to Buy And Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/) | [✔️](c%2F0121-best-time-to-buy-and-sell-stock.c)
| [✔️](cpp%2F0121-best-time-to-buy-and-sell-stock.cpp)
| [✔️](csharp%2F0121-best-time-to-buy-and-sell-stock.cs)
| ❌
| [✔️](go%2F0121-best-time-to-buy-and-sell-stock.go)
| [✔️](java%2F0121-best-time-to-buy-and-sell-stock.java)
| [✔️](javascript%2F0121-best-time-to-buy-and-sell-stock.js)
| [✔️](kotlin%2F0121-best-time-to-buy-and-sell-stock.kt)
| [✔️](python%2F0121-best-time-to-buy-and-sell-stock.py)
| [✔️](ruby%2F0121-best-time-to-buy-and-sell-stock.rb)
| [✔️](rust%2F0121-best-time-to-buy-and-sell-stock.rs)
| ❌
| [✔️](swift%2F0121-best-time-to-buy-and-sell-stock.swift)
| [✔️](typescript%2F0121-best-time-to-buy-and-sell-stock.ts)
-[0219 - Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/) | ❌
| [✔️](cpp%2F0219-Contains-Duplicate-II.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0219-contains-duplicate-ii.js)
| [✔️](kotlin%2F0219-contains-duplicate-ii.kt)
| [✔️](python%2F0219-contains-duplicate-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1343 - Number of Sub Arrays of Size K and Avg Greater than or Equal to Threshold](https://leetcode.com/problems/number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.js)
| [✔️](kotlin%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.kt)
| [✔️](python%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0003 - Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/) | [✔️](c%2F0003-longest-substring-without-repeating-characters.c)
| [✔️](cpp%2F0003-longest-substring-without-repeating-characters.cpp)
| [✔️](csharp%2F0003-longest-substring-without-repeating-characters.cs)
| ❌
| [✔️](go%2F0003-longest-substring-without-repeating-characters.go)
| [✔️](java%2F0003-longest-substring-without-repeating-characters.java)
| [✔️](javascript%2F0003-longest-substring-without-repeating-characters.js)
| [✔️](kotlin%2F0003-longest-substring-without-repeating-characters.kt)
| [✔️](python%2F0003-longest-substring-without-repeating-characters.py)
| [✔️](ruby%2F0003-longest-substring-without-repeating-characters.rb)
| [✔️](rust%2F0003-longest-substring-without-repeating-characters.rs)
| [✔️](scala%2F0003-longest-substring-without-repeating-characters.scala)
| [✔️](swift%2F0003-longest-substring-without-repeating-characters.swift)
| [✔️](typescript%2F0003-longest-substring-without-repeating-characters.ts)
-[0424 - Longest Repeating Character Replacement](https://leetcode.com/problems/longest-repeating-character-replacement/) | [✔️](c%2F0424-longest-repeating-character-replacement.c)
| [✔️](cpp%2F0424-longest-repeating-character-replacement.cpp)
| [✔️](csharp%2F0424-longest-repeating-character-replacement.cs)
| ❌
| [✔️](go%2F0424-longest-repeating-character-replacement.go)
| [✔️](java%2F0424-longest-repeating-character-replacement.java)
| [✔️](javascript%2F0424-longest-repeating-character-replacement.js)
| [✔️](kotlin%2F0424-longest-repeating-character-replacement.kt)
| [✔️](python%2F0424-longest-repeating-character-replacement.py)
| [✔️](ruby%2F0424-longest-repeating-character-replacement.rb)
| [✔️](rust%2F0424-longest-repeating-character-replacement.rs)
| ❌
| [✔️](swift%2F0424-longest-repeating-character-replacement.swift)
| [✔️](typescript%2F0424-longest-repeating-character-replacement.ts)
-[0567 - Permutation In String](https://leetcode.com/problems/permutation-in-string/) | [✔️](c%2F0567-permutation-in-string.c)
| [✔️](cpp%2F0567-permutation-in-string.cpp)
| [✔️](csharp%2F0567-permutation-in-string.cs)
| ❌
| [✔️](go%2F0567-permutation-in-string.go)
| [✔️](java%2F0567-permutation-in-string.java)
| [✔️](javascript%2F0567-permutation-in-string.js)
| [✔️](kotlin%2F0567-permutation-in-string.kt)
| [✔️](python%2F0567-permutation-in-string.py)
| ❌
| [✔️](rust%2F0567-permutation-in-string.rs)
| ❌
| ❌
| [✔️](typescript%2F0567-permutation-in-string.ts)
-[1838 - Frequency of The Most Frequent Element](https://leetcode.com/problems/frequency-of-the-most-frequent-element/) | [✔️](c%2F1838-frequency-of-the-most-frequent-element.c)
| [✔️](cpp%2F1838-frequency-of-the-most-frequent-element.cpp)
| [✔️](csharp%2F1838-Frequency-Of-The-Most-Frequent-Element.cs)
| ❌
| [✔️](go%2F1838-frequency-of-the-most-frequent-element.go)
| ❌
| [✔️](javascript%2F1838-frequency-of-the-most-frequent-element.js)
| ❌
| ❌
| ❌
| [✔️](rust%2F1838-frequency-of-the-most-frequent-element.rs)
| ❌
| ❌
| [✔️](typescript%2F1838-frequency-of-the-most-frequent-element.ts)
-[1888 - Minimum Number of Flips to Make The Binary String Alternating](https://leetcode.com/problems/minimum-number-of-flips-to-make-the-binary-string-alternating/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.ts)
-[0209 - Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/) | [✔️](c%2F0209-minimum-size-subarray-sum.c)
| [✔️](cpp%2F0209-minimum-size-subarray-sum.cpp)
| ❌
| ❌
| [✔️](go%2F0209-minimum-size-subarray-sum.go)
| ❌
| [✔️](javascript%2F0209-minimum-size-subarray-sum.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0658 - Find K Closest Elements](https://leetcode.com/problems/find-k-closest-elements/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0658-find-k-closest-elements.js)
| [✔️](kotlin%2F0658-find-k-closest-elements.kt)
| [✔️](python%2F0658-find-k-closest-elements.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0658-find-k-closest-elements.ts)
-[0076 - Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/) | [✔️](c%2F0076-minimum-window-substring.c)
| [✔️](cpp%2F0076-minimum-window-substring.cpp)
| [✔️](csharp%2F0076-minimum-window-substring.cs)
| ❌
| [✔️](go%2F0076-minimum-window-substring.go)
| [✔️](java%2F0076-minimum-window-substring.java)
| [✔️](javascript%2F0076-minimum-window-substring.js)
| [✔️](kotlin%2F0076-minimum-window-substring.kt)
| [✔️](python%2F0076-minimum-window-substring.py)
| [✔️](ruby%2F0076-minimum-window-substring.rb)
| [✔️](rust%2F0076-minimum-window-substring.rs)
| ❌
| [✔️](swift%2F0076-minimum-window-substring.swift)
| [✔️](typescript%2F0076-minimum-window-substring.ts)
-[0239 - Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/) | ❌
| [✔️](cpp%2F0239-sliding-window-maximum.cpp)
| [✔️](csharp%2F0239-sliding-window-maximum.cs)
| ❌
| [✔️](go%2F0239-sliding-window-maximum.go)
| [✔️](java%2F0239-sliding-window-maximum.java)
| [✔️](javascript%2F0239-sliding-window-maximum.js)
| [✔️](kotlin%2F0239-sliding-window-maximum.kt)
| [✔️](python%2F0239-sliding-window-maximum.py)
| [✔️](ruby%2F0239-sliding-window-maximum.rb)
| ❌
| ❌
| ❌
| [✔️](typescript%2F0239-sliding-window-maximum.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0121 - Best Time to Buy And Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/) | ❌
| [✔️](c%2F0121-best-time-to-buy-and-sell-stock.c)
| [✔️](cpp%2F0121-best-time-to-buy-and-sell-stock.cpp)
| [✔️](csharp%2F0121-best-time-to-buy-and-sell-stock.cs)
| [✔️](dart%2F0121-best-time-to-buy-and-sell-stock.dart)
| [✔️](go%2F0121-best-time-to-buy-and-sell-stock.go)
| ❌
| [✔️](java%2F0121-best-time-to-buy-and-sell-stock.java)
| [✔️](javascript%2F0121-best-time-to-buy-and-sell-stock.js)
| [✔️](kotlin%2F0121-best-time-to-buy-and-sell-stock.kt)
| [✔️](python%2F0121-best-time-to-buy-and-sell-stock.py)
| [✔️](ruby%2F0121-best-time-to-buy-and-sell-stock.rb)
| [✔️](rust%2F0121-best-time-to-buy-and-sell-stock.rs)
| [✔️](scala%2F0121-best-time-to-buy-and-sell-stock.scala)
| [✔️](swift%2F0121-best-time-to-buy-and-sell-stock.swift)
| [✔️](typescript%2F0121-best-time-to-buy-and-sell-stock.ts)
+[0219 - Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/) | ❌
| ❌
| [✔️](cpp%2F0219-contains-duplicate-ii.cpp)
| [✔️](csharp%2F0219-contains-duplicate-ii.cs)
| ❌
| [✔️](go%2F0219-contains-duplicate-ii.go)
| ❌
| [✔️](java%2F0219-contains-duplicate-ii.java)
| [✔️](javascript%2F0219-contains-duplicate-ii.js)
| [✔️](kotlin%2F0219-contains-duplicate-ii.kt)
| [✔️](python%2F0219-contains-duplicate-ii.py)
| ❌
| [✔️](rust%2F0219-contains-duplicate-ii.rs)
| ❌
| [✔️](swift%2F0219-contains-duplicate-ii.swift)
| [✔️](typescript%2F0219-contains-duplicate-ii.ts)
+[1343 - Number of Sub Arrays of Size K and Avg Greater than or Equal to Threshold](https://leetcode.com/problems/number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold/) | ❌
| ❌
| [✔️](cpp%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.cpp)
| [✔️](csharp%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.cs)
| ❌
| [✔️](go%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.go)
| ❌
| [✔️](java%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.java)
| [✔️](javascript%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.js)
| [✔️](kotlin%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.kt)
| [✔️](python%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.swift)
| ❌
+[0003 - Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/) | ❌
| [✔️](c%2F0003-longest-substring-without-repeating-characters.c)
| [✔️](cpp%2F0003-longest-substring-without-repeating-characters.cpp)
| [✔️](csharp%2F0003-longest-substring-without-repeating-characters.cs)
| [✔️](dart%2F0003-longest-substring-without-repeating-characters.dart)
| [✔️](go%2F0003-longest-substring-without-repeating-characters.go)
| ❌
| [✔️](java%2F0003-longest-substring-without-repeating-characters.java)
| [✔️](javascript%2F0003-longest-substring-without-repeating-characters.js)
| [✔️](kotlin%2F0003-longest-substring-without-repeating-characters.kt)
| [✔️](python%2F0003-longest-substring-without-repeating-characters.py)
| [✔️](ruby%2F0003-longest-substring-without-repeating-characters.rb)
| [✔️](rust%2F0003-longest-substring-without-repeating-characters.rs)
| [✔️](scala%2F0003-longest-substring-without-repeating-characters.scala)
| [✔️](swift%2F0003-longest-substring-without-repeating-characters.swift)
| [✔️](typescript%2F0003-longest-substring-without-repeating-characters.ts)
+[0424 - Longest Repeating Character Replacement](https://leetcode.com/problems/longest-repeating-character-replacement/) | ❌
| [✔️](c%2F0424-longest-repeating-character-replacement.c)
| [✔️](cpp%2F0424-longest-repeating-character-replacement.cpp)
| [✔️](csharp%2F0424-longest-repeating-character-replacement.cs)
| ❌
| [✔️](go%2F0424-longest-repeating-character-replacement.go)
| ❌
| [✔️](java%2F0424-longest-repeating-character-replacement.java)
| [✔️](javascript%2F0424-longest-repeating-character-replacement.js)
| [✔️](kotlin%2F0424-longest-repeating-character-replacement.kt)
| [✔️](python%2F0424-longest-repeating-character-replacement.py)
| [✔️](ruby%2F0424-longest-repeating-character-replacement.rb)
| [✔️](rust%2F0424-longest-repeating-character-replacement.rs)
| ❌
| [✔️](swift%2F0424-longest-repeating-character-replacement.swift)
| [✔️](typescript%2F0424-longest-repeating-character-replacement.ts)
+[0567 - Permutation In String](https://leetcode.com/problems/permutation-in-string/) | ❌
| [✔️](c%2F0567-permutation-in-string.c)
| [✔️](cpp%2F0567-permutation-in-string.cpp)
| [✔️](csharp%2F0567-permutation-in-string.cs)
| ❌
| [✔️](go%2F0567-permutation-in-string.go)
| ❌
| [✔️](java%2F0567-permutation-in-string.java)
| [✔️](javascript%2F0567-permutation-in-string.js)
| [✔️](kotlin%2F0567-permutation-in-string.kt)
| [✔️](python%2F0567-permutation-in-string.py)
| ❌
| [✔️](rust%2F0567-permutation-in-string.rs)
| ❌
| [✔️](swift%2F0567-permutation-in-string.swift)
| [✔️](typescript%2F0567-permutation-in-string.ts)
+[1838 - Frequency of The Most Frequent Element](https://leetcode.com/problems/frequency-of-the-most-frequent-element/) | ❌
| [✔️](c%2F1838-frequency-of-the-most-frequent-element.c)
| [✔️](cpp%2F1838-frequency-of-the-most-frequent-element.cpp)
| [✔️](csharp%2F1838-Frequency-Of-The-Most-Frequent-Element.cs)
| ❌
| [✔️](go%2F1838-frequency-of-the-most-frequent-element.go)
| ❌
| [✔️](java%2F1838-frequency-of-the-most-frequent-element.java)
| [✔️](javascript%2F1838-frequency-of-the-most-frequent-element.js)
| [✔️](kotlin%2F1838-frequency-of-the-most-frequent-element.kt)
| [✔️](python%2F1838-frequency-of-the-most-frequent-element.py)
| ❌
| [✔️](rust%2F1838-frequency-of-the-most-frequent-element.rs)
| ❌
| ❌
| [✔️](typescript%2F1838-frequency-of-the-most-frequent-element.ts)
+[0904 - Fruits into Basket](https://leetcode.com/problems/fruit-into-baskets/) | ❌
| ❌
| [✔️](cpp%2F0904-fruit-into-baskets.cpp)
| ❌
| ❌
| [✔️](go%2F0904-fruit-into-baskets.go)
| ❌
| [✔️](java%2F0904-fruit-into-baskets.java)
| [✔️](javascript%2F0904-fruit-into-baskets.js)
| [✔️](kotlin%2F0904-fruit-into-baskets.kt)
| [✔️](python%2F0904-fruit-into-baskets.py)
| ❌
| [✔️](rust%2F0904-fruit-into-baskets.rs)
| ❌
| ❌
| [✔️](typescript%2F0904-fruit-into-baskets.ts)
+[1456 - Maximum Number of Vowels in a Substring of Given Length](https://leetcode.com/problems/maximum-number-of-vowels-in-a-substring-of-given-length/) | ❌
| [✔️](c%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.c)
| [✔️](cpp%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.cpp)
| ❌
| ❌
| [✔️](go%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.go)
| ❌
| [✔️](java%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.java)
| ❌
| [✔️](kotlin%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.kt)
| [✔️](python%2F1456-maximum-number-of-vowels-in-a-substring-of-given-length.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1888 - Minimum Number of Flips to Make The Binary String Alternating](https://leetcode.com/problems/minimum-number-of-flips-to-make-the-binary-string-alternating/) | ❌
| ❌
| [✔️](cpp%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.js)
| [✔️](kotlin%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.kt)
| [✔️](python%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F1888-minimum-number-of-flips-to-make-the-binary-string-alternating.ts)
+[0209 - Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/) | ❌
| [✔️](c%2F0209-minimum-size-subarray-sum.c)
| [✔️](cpp%2F0209-minimum-size-subarray-sum.cpp)
| ❌
| ❌
| [✔️](go%2F0209-minimum-size-subarray-sum.go)
| ❌
| [✔️](java%2F0209-minimum-size-subarray-sum.java)
| [✔️](javascript%2F0209-minimum-size-subarray-sum.js)
| [✔️](kotlin%2F0209-minimum-size-subarray-sum.kt)
| [✔️](python%2F0209-minimum-size-subarray-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0209-minimum-size-subarray-sum.swift)
| ❌
+[0658 - Find K Closest Elements](https://leetcode.com/problems/find-k-closest-elements/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0658-find-k-closest-elements.go)
| ❌
| [✔️](java%2F0658-find-k-closest-elements.java)
| [✔️](javascript%2F0658-find-k-closest-elements.js)
| [✔️](kotlin%2F0658-find-k-closest-elements.kt)
| [✔️](python%2F0658-find-k-closest-elements.py)
| ❌
| [✔️](rust%2F0658-find-k-closest-elements.rs)
| ❌
| ❌
| [✔️](typescript%2F0658-find-k-closest-elements.ts)
+[1658 - Minimum Operations to Reduce X to Zero](https://leetcode.com/problems/minimum-operations-to-reduce-x-to-zero/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1658-minimum-operations-to-reduce-x-to-zero.go)
| ❌
| [✔️](java%2F1658-minimum-operations-to-reduce-x-to-zero.java)
| ❌
| [✔️](kotlin%2F1658-minimum-operations-to-reduce-x-to-zero.kt)
| [✔️](python%2F1658-minimum-operations-to-reduce-x-to-zero.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0076 - Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/) | ❌
| [✔️](c%2F0076-minimum-window-substring.c)
| [✔️](cpp%2F0076-minimum-window-substring.cpp)
| [✔️](csharp%2F0076-minimum-window-substring.cs)
| ❌
| [✔️](go%2F0076-minimum-window-substring.go)
| ❌
| [✔️](java%2F0076-minimum-window-substring.java)
| [✔️](javascript%2F0076-minimum-window-substring.js)
| [✔️](kotlin%2F0076-minimum-window-substring.kt)
| [✔️](python%2F0076-minimum-window-substring.py)
| [✔️](ruby%2F0076-minimum-window-substring.rb)
| [✔️](rust%2F0076-minimum-window-substring.rs)
| ❌
| [✔️](swift%2F0076-minimum-window-substring.swift)
| [✔️](typescript%2F0076-minimum-window-substring.ts)
+[0239 - Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/) | ❌
| [✔️](c%2F0239-sliding-window-maximum.c)
| [✔️](cpp%2F0239-sliding-window-maximum.cpp)
| [✔️](csharp%2F0239-sliding-window-maximum.cs)
| ❌
| [✔️](go%2F0239-sliding-window-maximum.go)
| ❌
| [✔️](java%2F0239-sliding-window-maximum.java)
| [✔️](javascript%2F0239-sliding-window-maximum.js)
| [✔️](kotlin%2F0239-sliding-window-maximum.kt)
| [✔️](python%2F0239-sliding-window-maximum.py)
| [✔️](ruby%2F0239-sliding-window-maximum.rb)
| [✔️](rust%2F0239-sliding-window-maximum.rs)
| ❌
| [✔️](swift%2F0239-sliding-window-maximum.swift)
| [✔️](typescript%2F0239-sliding-window-maximum.ts)
### Stack
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0020 - Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) | [✔️](c%2F0020-valid-parentheses.c)
| [✔️](cpp%2F0020-valid-parentheses.cpp)
| [✔️](csharp%2F0020-valid-parentheses.cs)
| [✔️](dart%2F0020-valid-parentheses.dart)
| [✔️](go%2F0020-valid-parentheses.go)
| [✔️](java%2F0020-valid-parentheses.java)
| [✔️](javascript%2F0020-valid-parentheses.js)
| [✔️](kotlin%2F0020-valid-parentheses.kt)
| [✔️](python%2F0020-valid-parentheses.py)
| [✔️](ruby%2F0020-valid-parentheses.rb)
| [✔️](rust%2F0020-valid-parentheses.rs)
| ❌
| [✔️](swift%2F0020-valid-parentheses.swift)
| [✔️](typescript%2F0020-valid-parentheses.ts)
-[0682 - Baseball Game](https://leetcode.com/problems/baseball-game/) | [✔️](c%2F0682-baseball-game.c)
| [✔️](cpp%2F0682-baseball-game.cpp)
| [✔️](csharp%2F0682-baseball-game.cs)
| ❌
| [✔️](go%2F0682-baseball-game.go)
| [✔️](java%2F0682-baseball-game.java)
| [✔️](javascript%2F0682-baseball-game.js)
| [✔️](kotlin%2F0682-baseball-game.kt)
| [✔️](python%2F0682-baseball-game.py)
| ❌
| [✔️](rust%2F0682-baseball-game.rs)
| ❌
| [✔️](swift%2F0682-baseball-game.swift)
| [✔️](typescript%2F0682-baseball-game.ts)
-[0225 - Implement Stack Using Queues](https://leetcode.com/problems/implement-stack-using-queues/) | [✔️](c%2F0225-implement-stack-using-queues.c)
| [✔️](cpp%2F0225-implement-stack-using-queues.cpp)
| ❌
| ❌
| [✔️](go%2F0225-implement-stack-using-queues.go)
| [✔️](java%2F0225-implement-stack-using-queues.java)
| [✔️](javascript%2F0225-implement-stack-using-queues.js)
| [✔️](kotlin%2F0225-implement-stack-using-queues.kt)
| [✔️](python%2F0225-implement-stack-using-queues.py)
| ❌
| [✔️](rust%2F0225-implement-stack-using-queues.rs)
| ❌
| ❌
| [✔️](typescript%2F0225-implement-stack-using-queues.ts)
-[0155 - Min Stack](https://leetcode.com/problems/min-stack/) | [✔️](c%2F0155-min-stack.c)
| [✔️](cpp%2F0155-min-stack.cpp)
| [✔️](csharp%2F0155-min-stack.cs)
| ❌
| [✔️](go%2F0155-min-stack.go)
| [✔️](java%2F0155-min-stack.java)
| [✔️](javascript%2F0155-min-stack.js)
| [✔️](kotlin%2F0155-min-stack.kt)
| [✔️](python%2F0155-min-stack.py)
| [✔️](ruby%2F0155-min-stack.rb)
| [✔️](rust%2F0155-min-stack.rs)
| ❌
| [✔️](swift%2F0155-min-stack.swift)
| [✔️](typescript%2F0155-min-stack.ts)
-[0150 - Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/) | [✔️](c%2F0150-evaluate-reverse-polish-notation.c)
| [✔️](cpp%2F0150-evaluate-reverse-polish-notation.cpp)
| [✔️](csharp%2F0150-evaluate-reverse-polish-notation.cs)
| ❌
| [✔️](go%2F0150-evaluate-reverse-polish-notation.go)
| [✔️](java%2F0150-evaluate-reverse-polish-notation.java)
| [✔️](javascript%2F0150-evaluate-reverse-polish-notation.js)
| [✔️](kotlin%2F0150-evaluate-reverse-polish-notation.kt)
| [✔️](python%2F0150-evaluate-reverse-polish-notation.py)
| [✔️](ruby%2F0150-evaluate-reverse-polish-notation.rb)
| [✔️](rust%2F0150-evaluate-reverse-polish-notation.rs)
| ❌
| [✔️](swift%2F0150-evaluate-reverse-polish-notation.swift)
| [✔️](typescript%2F0150-evaluate-reverse-polish-notation.ts)
-[0022 - Generate Parentheses](https://leetcode.com/problems/generate-parentheses/) | [✔️](c%2F0022-generate-parentheses.c)
| [✔️](cpp%2F0022-generate-parentheses.cpp)
| [✔️](csharp%2F0022-generate-parentheses.cs)
| ❌
| [✔️](go%2F0022-generate-parentheses.go)
| [✔️](java%2F0022-generate-parentheses.java)
| [✔️](javascript%2F0022-generate-parentheses.js)
| [✔️](kotlin%2F0022-generate-parentheses.kt)
| [✔️](python%2F0022-generate-parentheses.py)
| [✔️](ruby%2F0022-generate-parentheses.rb)
| [✔️](rust%2F0022-generate-parentheses.rs)
| ❌
| [✔️](swift%2F0022-generate-parentheses.swift)
| [✔️](typescript%2F0022-generate-parentheses.ts)
-[0735 - Asteroid Collision](https://leetcode.com/problems/asteroid-collision/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0735-asteroid-collision.java)
| [✔️](javascript%2F0735-asteroid-collision.js)
| ❌
| ❌
| ❌
| [✔️](rust%2F0735-asteroid-collision.rs)
| ❌
| ❌
| [✔️](typescript%2F0735-asteroid-collision.ts)
-[0739 - Daily Temperatures](https://leetcode.com/problems/daily-temperatures/) | [✔️](c%2F0739-daily-temperatures.c)
| [✔️](cpp%2F0739-daily-temperatures.cpp)
| [✔️](csharp%2F0739-daily-temperatures.cs)
| ❌
| [✔️](go%2F0739-daily-temperatures.go)
| [✔️](java%2F0739-daily-temperatures.java)
| [✔️](javascript%2F0739-daily-temperatures.js)
| [✔️](kotlin%2F0739-daily-temperatures.kt)
| [✔️](python%2F0739-daily-temperatures.py)
| [✔️](ruby%2F0739-daily-temperatures.rb)
| [✔️](rust%2F0739-daily-temperatures.rs)
| ❌
| [✔️](swift%2F0739-daily-temperatures.swift)
| [✔️](typescript%2F0739-daily-temperatures.ts)
-[0901 - Online Stock Span](https://leetcode.com/problems/online-stock-span/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0901-online-stock-span.java)
| ❌
| ❌
| [✔️](python%2F0901-online-stock-span.py)
| ❌
| [✔️](rust%2F0901-online-stock-span.rs)
| ❌
| ❌
| [✔️](typescript%2F0901-online-stock-span.ts)
-[0853 - Car Fleet](https://leetcode.com/problems/car-fleet/) | ❌
| [✔️](cpp%2F0853-car-fleet.cpp)
| [✔️](csharp%2F0853-car-fleet.cs)
| ❌
| [✔️](go%2F0853-car-fleet.go)
| [✔️](java%2F0853-car-fleet.java)
| [✔️](javascript%2F0853-car-fleet.js)
| [✔️](kotlin%2F0853-car-fleet.kt)
| [✔️](python%2F0853-car-fleet.py)
| [✔️](ruby%2F0853-car-fleet.rb)
| [✔️](rust%2F0853-car-fleet.rs)
| ❌
| ❌
| [✔️](typescript%2F0853-car-fleet.ts)
-[0071 - Simplify Path](https://leetcode.com/problems/simplify-path/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0071-simplify-path.java)
| ❌
| [✔️](kotlin%2F0071-simplify-path.kt)
| [✔️](python%2F0071-simplify-path.py)
| ❌
| [✔️](rust%2F0071-simplify-path.rs)
| ❌
| ❌
| [✔️](typescript%2F0071-simplify-path.ts)
-[0394 - Decode String](https://leetcode.com/problems/decode-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0394-decode-string.java)
| ❌
| ❌
| [✔️](python%2F0394-decode-string.py)
| ❌
| [✔️](rust%2F0394-decode-string.rs)
| [✔️](scala%2F0394-decode-string.scala)
| ❌
| [✔️](typescript%2F0394-decode-string.ts)
-[0402 - Remove K Digits](https://leetcode.com/problems/remove-k-digits/) | ❌
| [✔️](cpp%2F0402-remove-k-digits.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0402-remove-k-digits.js)
| [✔️](kotlin%2F0402-remove-k-digits.kt)
| ❌
| ❌
| [✔️](rust%2F0402-remove-k-digits.rs)
| ❌
| ❌
| [✔️](typescript%2F0402-remove-k-digits.ts)
-[1209 - Remove All Adjacent Duplicates In String II](https://leetcode.com/problems/remove-all-adjacent-duplicates-in-string-ii/) | ❌
| [✔️](cpp%2F1209-Remove-All-Adjacent-Duplicates-in-String-II.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1209-Remove-All-Adjacent-Duplicates-in-String-II.js)
| ❌
| [✔️](python%2F1209-remove-all-adjacent-duplicates-in-string-ii.py)
| ❌
| [✔️](rust%2F1209-remove-all-adjacent-duplicates-in-string-II.rs)
| ❌
| ❌
| [✔️](typescript%2F1209-remove-all-adjacent-duplicates-in-string-II.ts)
-[0132 - 132 Pattern](https://leetcode.com/problems/132-pattern/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0895 - Maximum Frequency Stack](https://leetcode.com/problems/maximum-frequency-stack/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0895-maximum-frequency-stack.js)
| [✔️](kotlin%2F0895-maximum-frequency-stack.kt)
| ❌
| ❌
| [✔️](rust%2F0895-maximum-frequency-stack.rs)
| ❌
| ❌
| [✔️](typescript%2F0895-maximum-frequency-stack.ts)
-[0084 - Largest Rectangle In Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram/) | [✔️](c%2F0084-largest-rectangle-in-histogram.c)
| [✔️](cpp%2F0084-largest-rectangle-in-histogram.cpp)
| [✔️](csharp%2F0084-largest-rectangle-in-histogram.cs)
| ❌
| [✔️](go%2F0084-largest-rectangle-in-histogram.go)
| [✔️](java%2F0084-largest-rectangle-in-histogram.java)
| [✔️](javascript%2F0084-largest-rectangle-in-histogram.js)
| [✔️](kotlin%2F0084-largest-rectangle-in-histogram.kt)
| [✔️](python%2F0084-largest-rectangle-in-histogram.py)
| ❌
| [✔️](rust%2F0084-largest-rectangle-in-histogram.rs)
| ❌
| ❌
| [✔️](typescript%2F0084-largest-rectangle-in-histogram.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0020 - Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) | ❌
| [✔️](c%2F0020-valid-parentheses.c)
| [✔️](cpp%2F0020-valid-parentheses.cpp)
| [✔️](csharp%2F0020-valid-parentheses.cs)
| [✔️](dart%2F0020-valid-parentheses.dart)
| [✔️](go%2F0020-valid-parentheses.go)
| ❌
| [✔️](java%2F0020-valid-parentheses.java)
| [✔️](javascript%2F0020-valid-parentheses.js)
| [✔️](kotlin%2F0020-valid-parentheses.kt)
| [✔️](python%2F0020-valid-parentheses.py)
| [✔️](ruby%2F0020-valid-parentheses.rb)
| [✔️](rust%2F0020-valid-parentheses.rs)
| ❌
| [✔️](swift%2F0020-valid-parentheses.swift)
| [✔️](typescript%2F0020-valid-parentheses.ts)
+[0682 - Baseball Game](https://leetcode.com/problems/baseball-game/) | ❌
| [✔️](c%2F0682-baseball-game.c)
| [✔️](cpp%2F0682-baseball-game.cpp)
| [✔️](csharp%2F0682-baseball-game.cs)
| ❌
| [✔️](go%2F0682-baseball-game.go)
| ❌
| [✔️](java%2F0682-baseball-game.java)
| [✔️](javascript%2F0682-Baseball-Game.js)
| [✔️](kotlin%2F0682-baseball-game.kt)
| [✔️](python%2F0682-baseball-game.py)
| ❌
| [✔️](rust%2F0682-baseball-game.rs)
| ❌
| [✔️](swift%2F0682-baseball-game.swift)
| [✔️](typescript%2F0682-baseball-game.ts)
+[0225 - Implement Stack Using Queues](https://leetcode.com/problems/implement-stack-using-queues/) | ❌
| [✔️](c%2F0225-implement-stack-using-queues.c)
| [✔️](cpp%2F0225-implement-stack-using-queues.cpp)
| [✔️](csharp%2F0225-implement-stack-using-queues.cs)
| ❌
| [✔️](go%2F0225-implement-stack-using-queues.go)
| ❌
| [✔️](java%2F0225-implement-stack-using-queues.java)
| [✔️](javascript%2F0225-implement-stack-using-queues.js)
| [✔️](kotlin%2F0225-implement-stack-using-queues.kt)
| [✔️](python%2F0225-implement-stack-using-queues.py)
| ❌
| [✔️](rust%2F0225-implement-stack-using-queues.rs)
| ❌
| [✔️](swift%2F0225-implement-stack-using-queues.swift)
| [✔️](typescript%2F0225-implement-stack-using-queues.ts)
+[0155 - Min Stack](https://leetcode.com/problems/min-stack/) | ❌
| [✔️](c%2F0155-min-stack.c)
| [✔️](cpp%2F0155-min-stack.cpp)
| [✔️](csharp%2F0155-min-stack.cs)
| [✔️](dart%2F0155-min-stack.dart)
| [✔️](go%2F0155-min-stack.go)
| ❌
| [✔️](java%2F0155-min-stack.java)
| [✔️](javascript%2F0155-min-stack.js)
| [✔️](kotlin%2F0155-min-stack.kt)
| [✔️](python%2F0155-min-stack.py)
| [✔️](ruby%2F0155-min-stack.rb)
| [✔️](rust%2F0155-min-stack.rs)
| ❌
| [✔️](swift%2F0155-min-stack.swift)
| [✔️](typescript%2F0155-min-stack.ts)
+[0150 - Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/) | ❌
| [✔️](c%2F0150-evaluate-reverse-polish-notation.c)
| [✔️](cpp%2F0150-evaluate-reverse-polish-notation.cpp)
| [✔️](csharp%2F0150-evaluate-reverse-polish-notation.cs)
| [✔️](dart%2F0150-evaluate-reverse-polish-notation.dart)
| [✔️](go%2F0150-evaluate-reverse-polish-notation.go)
| ❌
| [✔️](java%2F0150-evaluate-reverse-polish-notation.java)
| [✔️](javascript%2F0150-evaluate-reverse-polish-notation.js)
| [✔️](kotlin%2F0150-evaluate-reverse-polish-notation.kt)
| [✔️](python%2F0150-evaluate-reverse-polish-notation.py)
| [✔️](ruby%2F0150-evaluate-reverse-polish-notation.rb)
| [✔️](rust%2F0150-evaluate-reverse-polish-notation.rs)
| ❌
| [✔️](swift%2F0150-evaluate-reverse-polish-notation.swift)
| [✔️](typescript%2F0150-evaluate-reverse-polish-notation.ts)
+[2390 - Removing Stars From a String](https://leetcode.com/problems/removing-stars-from-a-string/) | ❌
| ❌
| [✔️](cpp%2F2390-removing-stars-from-a-string.cpp)
| [✔️](csharp%2F2390-removing-stars-from-a-string.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F2390-removing-stars-from-a-string.java)
| [✔️](javascript%2F2390-removing-stars-from-a-string.js)
| [✔️](kotlin%2F2390-removing-stars-from-a-string.kt)
| [✔️](python%2F2390-removing-stars-from-a-string.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F2390-removing-stars-from-a-string.ts)
+[0946 - Validate Stack Sequences](https://leetcode.com/problems/validate-stack-sequences/) | ❌
| ❌
| [✔️](cpp%2F0946-validate-stack-sequences.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0946-validate-stack-sequences.java)
| ❌
| [✔️](kotlin%2F0946-validate-stack-sequences.kt)
| [✔️](python%2F0946-validate-stack-sequences.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0022 - Generate Parentheses](https://leetcode.com/problems/generate-parentheses/) | ❌
| [✔️](c%2F0022-generate-parentheses.c)
| [✔️](cpp%2F0022-generate-parentheses.cpp)
| [✔️](csharp%2F0022-generate-parentheses.cs)
| ❌
| [✔️](go%2F0022-generate-parentheses.go)
| ❌
| [✔️](java%2F0022-generate-parentheses.java)
| [✔️](javascript%2F0022-generate-parentheses.js)
| [✔️](kotlin%2F0022-generate-parentheses.kt)
| [✔️](python%2F0022-generate-parentheses.py)
| [✔️](ruby%2F0022-generate-parentheses.rb)
| [✔️](rust%2F0022-generate-parentheses.rs)
| ❌
| [✔️](swift%2F0022-generate-parentheses.swift)
| [✔️](typescript%2F0022-generate-parentheses.ts)
+[0735 - Asteroid Collision](https://leetcode.com/problems/asteroid-collision/) | ❌
| ❌
| [✔️](cpp%2F0735-asteroid-collision.cpp)
| ❌
| ❌
| [✔️](go%2F0735-asteroid-collision.go)
| ❌
| [✔️](java%2F0735-asteroid-collision.java)
| [✔️](javascript%2F0735-asteroid-collision.js)
| [✔️](kotlin%2F0735-asteroid-collision.kt)
| [✔️](python%2F0735-asteroid-collision.py)
| ❌
| [✔️](rust%2F0735-asteroid-collision.rs)
| ❌
| [✔️](swift%2F0735-asteroid-collision.swift)
| [✔️](typescript%2F0735-asteroid-collision.ts)
+[0739 - Daily Temperatures](https://leetcode.com/problems/daily-temperatures/) | ❌
| [✔️](c%2F0739-daily-temperatures.c)
| [✔️](cpp%2F0739-daily-temperatures.cpp)
| [✔️](csharp%2F0739-daily-temperatures.cs)
| ❌
| [✔️](go%2F0739-daily-temperatures.go)
| ❌
| [✔️](java%2F0739-daily-temperatures.java)
| [✔️](javascript%2F0739-daily-temperatures.js)
| [✔️](kotlin%2F0739-daily-temperatures.kt)
| [✔️](python%2F0739-daily-temperatures.py)
| [✔️](ruby%2F0739-daily-temperatures.rb)
| [✔️](rust%2F0739-daily-temperatures.rs)
| ❌
| [✔️](swift%2F0739-daily-temperatures.swift)
| [✔️](typescript%2F0739-daily-temperatures.ts)
+[0901 - Online Stock Span](https://leetcode.com/problems/online-stock-span/) | ❌
| ❌
| [✔️](cpp%2F0901-online-stock-span.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0901-online-stock-span.java)
| [✔️](javascript%2F0901-online-stock-span.js)
| [✔️](kotlin%2F0901-online-stock-span.kt)
| [✔️](python%2F0901-online-stock-span.py)
| ❌
| [✔️](rust%2F0901-online-stock-span.rs)
| ❌
| ❌
| [✔️](typescript%2F0901-online-stock-span.ts)
+[0853 - Car Fleet](https://leetcode.com/problems/car-fleet/) | ❌
| [✔️](c%2F0853-car-fleet.c)
| [✔️](cpp%2F0853-car-fleet.cpp)
| [✔️](csharp%2F0853-car-fleet.cs)
| ❌
| [✔️](go%2F0853-car-fleet.go)
| ❌
| [✔️](java%2F0853-car-fleet.java)
| [✔️](javascript%2F0853-car-fleet.js)
| [✔️](kotlin%2F0853-car-fleet.kt)
| [✔️](python%2F0853-car-fleet.py)
| [✔️](ruby%2F0853-car-fleet.rb)
| [✔️](rust%2F0853-car-fleet.rs)
| ❌
| [✔️](swift%2F0853-car-fleet.swift)
| [✔️](typescript%2F0853-car-fleet.ts)
+[0071 - Simplify Path](https://leetcode.com/problems/simplify-path/) | ❌
| ❌
| [✔️](cpp%2F0071-simplify-path.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0071-simplify-path.java)
| [✔️](javascript%2F0071-simplify-path.js)
| [✔️](kotlin%2F0071-simplify-path.kt)
| [✔️](python%2F0071-simplify-path.py)
| ❌
| [✔️](rust%2F0071-simplify-path.rs)
| ❌
| ❌
| [✔️](typescript%2F0071-simplify-path.ts)
+[0394 - Decode String](https://leetcode.com/problems/decode-string/) | ❌
| ❌
| [✔️](cpp%2F0394-decode-string.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0394-decode-string.java)
| ❌
| [✔️](kotlin%2F0394-decode-string.kt)
| [✔️](python%2F0394-decode-string.py)
| ❌
| [✔️](rust%2F0394-decode-string.rs)
| [✔️](scala%2F0394-decode-string.scala)
| ❌
| [✔️](typescript%2F0394-decode-string.ts)
+[0402 - Remove K Digits](https://leetcode.com/problems/remove-k-digits/) | ❌
| ❌
| [✔️](cpp%2F0402-remove-k-digits.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0402-remove-k-digits.java)
| [✔️](javascript%2F0402-remove-k-digits.js)
| [✔️](kotlin%2F0402-remove-k-digits.kt)
| [✔️](python%2F0402-remove-k-digits.py)
| ❌
| [✔️](rust%2F0402-remove-k-digits.rs)
| ❌
| ❌
| [✔️](typescript%2F0402-remove-k-digits.ts)
+[1209 - Remove All Adjacent Duplicates In String II](https://leetcode.com/problems/remove-all-adjacent-duplicates-in-string-ii/) | ❌
| ❌
| [✔️](cpp%2F1209-Remove-All-Adjacent-Duplicates-in-String-II.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1209-remove-all-adjacent-duplicates-in-string-ii.java)
| [✔️](javascript%2F1209-Remove-All-Adjacent-Duplicates-in-String-II.js)
| [✔️](kotlin%2F1209-remove-all-adjacent-duplicates-in-string-ii.kt)
| [✔️](python%2F1209-remove-all-adjacent-duplicates-in-string-ii.py)
| ❌
| [✔️](rust%2F1209-remove-all-adjacent-duplicates-in-string-II.rs)
| ❌
| ❌
| [✔️](typescript%2F1209-remove-all-adjacent-duplicates-in-string-II.ts)
+[0456 - 132 Pattern](https://leetcode.com/problems/132-pattern/) | ❌
| ❌
| [✔️](cpp%2F0456-132-pattern.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0456-132-pattern.java)
| [✔️](javascript%2F0456-132-pattern.js)
| [✔️](kotlin%2F0456-132-pattern.kt)
| [✔️](python%2F0456-132-pattern.py)
| ❌
| [✔️](rust%2F0456-132-pattern.rs)
| ❌
| ❌
| [✔️](typescript%2F0456-132-pattern.ts)
+[0895 - Maximum Frequency Stack](https://leetcode.com/problems/maximum-frequency-stack/) | ❌
| ❌
| [✔️](cpp%2F0895-maximum-frequency-stack.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0895-maximum-frequency-stack.java)
| [✔️](javascript%2F0895-maximum-frequency-stack.js)
| [✔️](kotlin%2F0895-maximum-frequency-stack.kt)
| [✔️](python%2F0895-maximum-frequency-stack.py)
| ❌
| [✔️](rust%2F0895-maximum-frequency-stack.rs)
| ❌
| ❌
| [✔️](typescript%2F0895-maximum-frequency-stack.ts)
+[0084 - Largest Rectangle In Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram/) | ❌
| [✔️](c%2F0084-largest-rectangle-in-histogram.c)
| [✔️](cpp%2F0084-largest-rectangle-in-histogram.cpp)
| [✔️](csharp%2F0084-largest-rectangle-in-histogram.cs)
| ❌
| [✔️](go%2F0084-largest-rectangle-in-histogram.go)
| ❌
| [✔️](java%2F0084-largest-rectangle-in-histogram.java)
| [✔️](javascript%2F0084-largest-rectangle-in-histogram.js)
| [✔️](kotlin%2F0084-largest-rectangle-in-histogram.kt)
| [✔️](python%2F0084-largest-rectangle-in-histogram.py)
| [✔️](ruby%2F0084-largest-rectangle-in-histogram.rb)
| [✔️](rust%2F0084-largest-rectangle-in-histogram.rs)
| ❌
| [✔️](swift%2F0084-largest-rectangle-in-histogram.swift)
| [✔️](typescript%2F0084-largest-rectangle-in-histogram.ts)
### Binary Search
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0704 - Binary Search](https://leetcode.com/problems/binary-search/) | [✔️](c%2F0704-binary-search.c)
| [✔️](cpp%2F0704-binary-search.cpp)
| [✔️](csharp%2F0704-binary-search.cs)
| [✔️](dart%2F0704-binary-search.dart)
| [✔️](go%2F0704-binary-search.go)
| [✔️](java%2F0704-binary-search.java)
| [✔️](javascript%2F0704-binary-search.js)
| [✔️](kotlin%2F0704-binary-search.kt)
| [✔️](python%2F0704-binary-search.py)
| [✔️](ruby%2F0704-binary-search.rb)
| [✔️](rust%2F0704-binary-search.rs)
| ❌
| [✔️](swift%2F0704-binary-search.swift)
| [✔️](typescript%2F0704-binary-search.ts)
-[0035 - Search Insert Position](https://leetcode.com/problems/search-insert-position/) | [✔️](c%2F0035-search-insert-position.c)
| [✔️](cpp%2F0035-search-insert-position.cpp)
| [✔️](csharp%2F0035-search-insert-position.cs)
| ❌
| [✔️](go%2F0035-search-insert-position.go)
| [✔️](java%2F0035-search-insert-position.java)
| [✔️](javascript%2F0035-search-insert-position.js)
| [✔️](kotlin%2F0035-search-insert-position.kt)
| [✔️](python%2F0035-search-insert-position.py)
| ❌
| [✔️](rust%2F0035-search-insert-position.rs)
| ❌
| [✔️](swift%2F0035-search-insert-position.swift)
| [✔️](typescript%2F0035-search-insert-position.ts)
-[0374 - Guess Number Higher Or Lower](https://leetcode.com/problems/guess-number-higher-or-lower/) | [✔️](c%2F0374-guess-number-higher-or-lower.c)
| [✔️](cpp%2F0374-guess-number-higher-or-lower.cpp)
| ❌
| ❌
| [✔️](go%2F0374-guess-number-higher-or-lower.go)
| [✔️](java%2F0374-guess-number-higher-or-lower.java)
| [✔️](javascript%2F0374-guess-number-higher-or-lower.js)
| [✔️](kotlin%2F0374-guess-number-higher-or-lower.kt)
| [✔️](python%2F0374-guess-number-higher-or-lower.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0374-guess-number-higher-or-lower.swift)
| ❌
-[0441 - Arranging Coins](https://leetcode.com/problems/arranging-coins/) | ❌
| [✔️](cpp%2F0441-arranging-coins.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0441-arranging-coins.java)
| ❌
| [✔️](kotlin%2F0441-arranging-coins.kt)
| [✔️](python%2F0441-arranging-coins.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0977 - Squares of a Sorted Array](https://leetcode.com/problems/squares-of-a-sorted-array/) | ❌
| [✔️](cpp%2F0977-squares-of-a-sorted-array.cpp)
| ❌
| ❌
| [✔️](go%2F0977-squares-of-a-sorted-array.go)
| [✔️](java%2F0977-squares-of-a-sorted-array.java)
| [✔️](javascript%2F0977-squares-of-a-sorted-array.js)
| [✔️](kotlin%2F0977-squares-of-a-sorted-array.kt)
| [✔️](python%2F0977-squares-of-a-sorted-array.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0977-squares-of-a-sorted-array.ts)
-[0367 - Valid Perfect Square](https://leetcode.com/problems/valid-perfect-square/) | ❌
| [✔️](cpp%2F0367-valid-perfect-square.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0367-valid-perfect-square.java)
| [✔️](javascript%2F0367-valid-perfect-square.js)
| ❌
| [✔️](python%2F0367-valid-perfect-square.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0367-valid-perfect-square.swift)
| ❌
-[0074 - Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/) | [✔️](c%2F0074-search-a-2d-matrix.c)
| [✔️](cpp%2F0074-search-a-2d-matrix.cpp)
| [✔️](csharp%2F0074-search-a-2d-matrix.cs)
| ❌
| [✔️](go%2F0074-search-a-2d-matrix.go)
| [✔️](java%2F0074-search-a-2d-matrix.java)
| [✔️](javascript%2F0074-search-a-2d-matrix.js)
| [✔️](kotlin%2F0074-search-a-2d-matrix.kt)
| [✔️](python%2F0074-search-a-2d-matrix.py)
| [✔️](ruby%2F0074-search-a-2d-matrix.rb)
| [✔️](rust%2F0074-search-a-2d-matrix.rs)
| ❌
| [✔️](swift%2F0074-search-a-2d-matrix.swift)
| [✔️](typescript%2F0074-search-a-2d-matrix.ts)
-[0875 - Koko Eating Bananas](https://leetcode.com/problems/koko-eating-bananas/) | [✔️](c%2F0875-koko-eating-bananas.c)
| [✔️](cpp%2F0875-koko-eating-bananas.cpp)
| [✔️](csharp%2F0875-koko-eating-bananas.cs)
| ❌
| [✔️](go%2F0875-koko-eating-bananas.go)
| [✔️](java%2F0875-koko-eating-bananas.java)
| [✔️](javascript%2F0875-koko-eating-bananas.js)
| [✔️](kotlin%2F0875-koko-eating-bananas.kt)
| [✔️](python%2F0875-koko-eating-bananas.py)
| [✔️](ruby%2F0875-koko-eating-bananas.rb)
| [✔️](rust%2F0875-koko-eating-bananas.rs)
| ❌
| [✔️](swift%2F0875-koko-eating-bananas.swift)
| [✔️](typescript%2F0875-koko-eating-bananas.ts)
-[0033 - Search In Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/) | [✔️](c%2F0033-search-in-rotated-sorted-array.c)
| [✔️](cpp%2F0033-search-in-rotated-sorted-array.cpp)
| [✔️](csharp%2F0033-search-in-rotated-sorted-array.cs)
| ❌
| [✔️](go%2F0033-search-in-rotated-sorted-array.go)
| [✔️](java%2F0033-search-in-rotated-sorted-array.java)
| [✔️](javascript%2F0033-search-in-rotated-sorted-array.js)
| [✔️](kotlin%2F0033-search-in-rotated-sorted-array.kt)
| [✔️](python%2F0033-search-in-rotated-sorted-array.py)
| ❌
| [✔️](rust%2F0033-search-in-rotated-sorted-array.rs)
| [✔️](scala%2F0033-search-in-rotated-sorted-array.scala)
| [✔️](swift%2F0033-search-in-rotated-sorted-array.swift)
| [✔️](typescript%2F0033-search-in-rotated-sorted-array.ts)
-[0153 - Find Minimum In Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/) | [✔️](c%2F0153-find-minimum-in-rotated-sorted-array.c)
| [✔️](cpp%2F0153-find-minimum-in-rotated-sorted-array.cpp)
| [✔️](csharp%2F0153-find-minimum-in-rotated-sorted-array.cs)
| ❌
| [✔️](go%2F0153-find-minimum-in-rotated-sorted-array.go)
| [✔️](java%2F0153-find-minimum-in-rotated-sorted-array.java)
| [✔️](javascript%2F0153-find-minimum-in-rotated-sorted-array.js)
| [✔️](kotlin%2F0153-find-minimum-in-rotated-sorted-array.kt)
| [✔️](python%2F0153-find-minimum-in-rotated-sorted-array.py)
| [✔️](ruby%2F0153-find-minimum-in-rotated-sorted-array.rb)
| [✔️](rust%2F0153-find-minimum-in-rotated-sorted-array.rs)
| [✔️](scala%2F0153-find-minimum-in-rotated-sorted-array.scala)
| [✔️](swift%2F0153-find-minimum-in-rotated-sorted-array.swift)
| [✔️](typescript%2F0153-find-minimum-in-rotated-sorted-array.ts)
-[0981 - Time Based Key Value Store](https://leetcode.com/problems/time-based-key-value-store/) | ❌
| [✔️](cpp%2F0981-time-based-key-value-store.cpp)
| [✔️](csharp%2F0981-time-based-key-value-store.cs)
| ❌
| [✔️](go%2F0981-time-based-key-value-store.go)
| [✔️](java%2F0981-time-based-key-value-store.java)
| [✔️](javascript%2F0981-time-based-key-value-store.js)
| [✔️](kotlin%2F0981-time-based-key-value-store.kt)
| [✔️](python%2F0981-time-based-key-value-store.py)
| [✔️](ruby%2F0981-Time-Based-Key-Value-Store.rb)
| [✔️](rust%2F0981-time-based-key-value-store.rs)
| ❌
| ❌
| [✔️](typescript%2F0981-time-based-key-value-store.ts)
-[0034 - Find First And Last Position of Element In Sorted Array](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | ❌
| ❌
| [✔️](csharp%2F0034-find-first-and-last-position-of-element-in-sorted-array.cs)
| ❌
| ❌
| [✔️](java%2F0034-find-first-and-last-position-of-element-in-sorted-array.java)
| ❌
| [✔️](kotlin%2F0034-find-first-and-last-position-of-element-in-sorted-array.kt)
| [✔️](python%2F0034-find-first-and-last-position-of-element-in-sorted-array.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0034-find-first-and-last-position-of-element-in-sorted-array.swift)
| ❌
-[1898 - Maximum Number of Removable Characters](https://leetcode.com/problems/maximum-number-of-removable-characters/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0116 - Populating Next Right Pointers In Each Node](https://leetcode.com/problems/populating-next-right-pointers-in-each-node/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0116-populating-next-right-pointers-in-each-node.go)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1268 - Search Suggestions System](https://leetcode.com/problems/search-suggestions-system/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0410 - Split Array Largest Sum](https://leetcode.com/problems/split-array-largest-sum/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0410-split-array-largest-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0004 - Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/) | [✔️](c%2F0004-median-of-two-sorted-arrays.c)
| [✔️](cpp%2F0004-median-of-two-sorted-arrays.cpp)
| [✔️](csharp%2F0004-median-of-two-sorted-arrays.cs)
| ❌
| [✔️](go%2F0004-median-of-two-sorted-arrays.go)
| [✔️](java%2F0004-median-of-two-sorted-arrays.java)
| [✔️](javascript%2F0004-median-of-two-sorted-arrays.js)
| [✔️](kotlin%2F0004-median-of-two-sorted-arrays.kt)
| [✔️](python%2F0004-median-of-two-sorted-arrays.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0004-median-of-two-sorted-arrays.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0704 - Binary Search](https://leetcode.com/problems/binary-search/) | ❌
| [✔️](c%2F0704-binary-search.c)
| [✔️](cpp%2F0704-binary-search.cpp)
| [✔️](csharp%2F0704-binary-search.cs)
| [✔️](dart%2F0704-binary-search.dart)
| [✔️](go%2F0704-binary-search.go)
| ❌
| [✔️](java%2F0704-binary-search.java)
| [✔️](javascript%2F0704-binary-search.js)
| [✔️](kotlin%2F0704-binary-search.kt)
| [✔️](python%2F0704-binary-search.py)
| [✔️](ruby%2F0704-binary-search.rb)
| [✔️](rust%2F0704-binary-search.rs)
| [✔️](scala%2F0704-binary-search.scala)
| [✔️](swift%2F0704-binary-search.swift)
| [✔️](typescript%2F0704-binary-search.ts)
+[0035 - Search Insert Position](https://leetcode.com/problems/search-insert-position/) | ❌
| [✔️](c%2F0035-search-insert-position.c)
| [✔️](cpp%2F0035-search-insert-position.cpp)
| [✔️](csharp%2F0035-search-insert-position.cs)
| ❌
| [✔️](go%2F0035-search-insert-position.go)
| ❌
| [✔️](java%2F0035-search-insert-position.java)
| [✔️](javascript%2F0035-search-insert-position.js)
| [✔️](kotlin%2F0035-search-insert-position.kt)
| [✔️](python%2F0035-search-insert-position.py)
| [✔️](ruby%2F0035-search-insert-position.rb)
| [✔️](rust%2F0035-search-insert-position.rs)
| ❌
| [✔️](swift%2F0035-search-insert-position.swift)
| [✔️](typescript%2F0035-search-insert-position.ts)
+[0374 - Guess Number Higher Or Lower](https://leetcode.com/problems/guess-number-higher-or-lower/) | ❌
| [✔️](c%2F0374-guess-number-higher-or-lower.c)
| [✔️](cpp%2F0374-guess-number-higher-or-lower.cpp)
| [✔️](csharp%2F0374-guess-number-higher-or-lower.cs)
| ❌
| [✔️](go%2F0374-guess-number-higher-or-lower.go)
| ❌
| [✔️](java%2F0374-guess-number-higher-or-lower.java)
| [✔️](javascript%2F0374-guess-number-higher-or-lower.js)
| [✔️](kotlin%2F0374-guess-number-higher-or-lower.kt)
| [✔️](python%2F0374-guess-number-higher-or-lower.py)
| ❌
| [✔️](rust%2F0374-guess-number-higher-or-lower.rs)
| ❌
| [✔️](swift%2F0374-guess-number-higher-or-lower.swift)
| ❌
+[0441 - Arranging Coins](https://leetcode.com/problems/arranging-coins/) | ❌
| ❌
| [✔️](cpp%2F0441-arranging-coins.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0441-arranging-coins.java)
| [✔️](javascript%2F0441-arranging-coins.js)
| [✔️](kotlin%2F0441-arranging-coins.kt)
| [✔️](python%2F0441-arranging-coins.py)
| ❌
| [✔️](rust%2F0441-arranging-coins.rs)
| ❌
| ❌
| ❌
+[0977 - Squares of a Sorted Array](https://leetcode.com/problems/squares-of-a-sorted-array/) | ❌
| ❌
| [✔️](cpp%2F0977-squares-of-a-sorted-array.cpp)
| ❌
| ❌
| [✔️](go%2F0977-squares-of-a-sorted-array.go)
| ❌
| [✔️](java%2F0977-squares-of-a-sorted-array.java)
| [✔️](javascript%2F0977-squares-of-a-sorted-array.js)
| [✔️](kotlin%2F0977-squares-of-a-sorted-array.kt)
| [✔️](python%2F0977-squares-of-a-sorted-array.py)
| ❌
| [✔️](rust%2F0977-squares-of-a-sorted-array.rs)
| ❌
| [✔️](swift%2F0977-squares-of-a-sorted-array.swift)
| [✔️](typescript%2F0977-squares-of-a-sorted-array.ts)
+[0367 - Valid Perfect Square](https://leetcode.com/problems/valid-perfect-square/) | ❌
| [✔️](c%2F0367-valid-perfect-square.c)
| [✔️](cpp%2F0367-valid-perfect-square.cpp)
| ❌
| ❌
| [✔️](go%2F0367-valid-perfect-square.go)
| ❌
| [✔️](java%2F0367-valid-perfect-square.java)
| [✔️](javascript%2F0367-valid-perfect-square.js)
| [✔️](kotlin%2F0367-valid-perfect-square.kt)
| [✔️](python%2F0367-valid-perfect-square.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0367-valid-perfect-square.swift)
| ❌
+[0069 - Sqrt(x) ](https://leetcode.com/problems/sqrtx/) | ❌
| [✔️](c%2F0069-sqrtx.c)
| [✔️](cpp%2F0069-sqrtx.cpp)
| [✔️](csharp%2F0069-sqrtx.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0069-sqrtx.java)
| [✔️](javascript%2F0069-sqrtx.js)
| [✔️](kotlin%2F0069-sqrtx.kt)
| [✔️](python%2F0069-sqrtx.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0540 - Single Element in a Sorted Array](https://leetcode.com/problems/single-element-in-a-sorted-array/) | ❌
| [✔️](c%2F0540-single-element-in-a-sorted-array.c)
| [✔️](cpp%2F0540-single-element-in-a-sorted-array.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0540-single-element-in-a-sorted-array.java)
| [✔️](javascript%2F0540-single-element-in-a-sorted-array.js)
| [✔️](kotlin%2F0540-single-element-in-a-sorted-array.kt)
| [✔️](python%2F0540-single-element-in-a-sorted-array.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0540-single-element-in-a-sorted-array.ts)
+[1011 - Capacity to Ship Packages](https://leetcode.com/problems/capacity-to-ship-packages-within-d-days/) | ❌
| ❌
| [✔️](cpp%2F1011-capacity-to-ship-packages-within-d-days.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1011-capacity-to-ship-packages-within-d-days.java)
| ❌
| [✔️](kotlin%2F1011-capacity-to-ship-packages-within-d-days.kt)
| [✔️](python%2F1011-capacity-to-ship-packages-within-d-days.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0162 - Find Peak Element](https://leetcode.com/problems/find-peak-element/) | ❌
| [✔️](c%2F0162-find-peak-element.c)
| [✔️](cpp%2F0162-find-peak-element.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0162-find-peak-element.java)
| [✔️](javascript%2F0162-find-peak-element.js)
| [✔️](kotlin%2F0162-find-peak-element.kt)
| [✔️](python%2F0162-find-peak-element.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2300 - Successful Pairs of Spells and Potions](https://leetcode.com/problems/successful-pairs-of-spells-and-potions/) | ❌
| ❌
| [✔️](cpp%2F2300-successful-pairs-of-spells-and-potions.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2300-successful-pairs-of-spells-and-potions.java)
| ❌
| [✔️](kotlin%2F2300-successful-pairs-of-spells-and-potions.kt)
| [✔️](python%2F2300-successful-pairs-of-spells-and-potions.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0074 - Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/) | ❌
| [✔️](c%2F0074-search-a-2d-matrix.c)
| [✔️](cpp%2F0074-search-a-2d-matrix.cpp)
| [✔️](csharp%2F0074-search-a-2d-matrix.cs)
| ❌
| [✔️](go%2F0074-search-a-2d-matrix.go)
| ❌
| [✔️](java%2F0074-search-a-2d-matrix.java)
| [✔️](javascript%2F0074-search-a-2d-matrix.js)
| [✔️](kotlin%2F0074-search-a-2d-matrix.kt)
| [✔️](python%2F0074-search-a-2d-matrix.py)
| [✔️](ruby%2F0074-search-a-2d-matrix.rb)
| [✔️](rust%2F0074-search-a-2d-matrix.rs)
| ❌
| [✔️](swift%2F0074-search-a-2d-matrix.swift)
| [✔️](typescript%2F0074-search-a-2d-matrix.ts)
+[0875 - Koko Eating Bananas](https://leetcode.com/problems/koko-eating-bananas/) | ❌
| [✔️](c%2F0875-koko-eating-bananas.c)
| [✔️](cpp%2F0875-koko-eating-bananas.cpp)
| [✔️](csharp%2F0875-koko-eating-bananas.cs)
| ❌
| [✔️](go%2F0875-koko-eating-bananas.go)
| ❌
| [✔️](java%2F0875-koko-eating-bananas.java)
| [✔️](javascript%2F0875-koko-eating-bananas.js)
| [✔️](kotlin%2F0875-koko-eating-bananas.kt)
| [✔️](python%2F0875-koko-eating-bananas.py)
| [✔️](ruby%2F0875-koko-eating-bananas.rb)
| [✔️](rust%2F0875-koko-eating-bananas.rs)
| ❌
| [✔️](swift%2F0875-koko-eating-bananas.swift)
| [✔️](typescript%2F0875-koko-eating-bananas.ts)
+[2616 - Minimize the Maximum Difference of Pairs](https://leetcode.com/problems/minimize-the-maximum-difference-of-pairs/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2616-minimize-the-maximum-difference-of-pairs.java)
| ❌
| [✔️](kotlin%2F2616-minimize-the-maximum-difference-of-pairs.kt)
| [✔️](python%2F2616-minimize-the-maximum-difference-of-pairs.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0153 - Find Minimum In Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/) | ❌
| [✔️](c%2F0153-find-minimum-in-rotated-sorted-array.c)
| [✔️](cpp%2F0153-find-minimum-in-rotated-sorted-array.cpp)
| [✔️](csharp%2F0153-find-minimum-in-rotated-sorted-array.cs)
| ❌
| [✔️](go%2F0153-find-minimum-in-rotated-sorted-array.go)
| ❌
| [✔️](java%2F0153-find-minimum-in-rotated-sorted-array.java)
| [✔️](javascript%2F0153-find-minimum-in-rotated-sorted-array.js)
| [✔️](kotlin%2F0153-find-minimum-in-rotated-sorted-array.kt)
| [✔️](python%2F0153-find-minimum-in-rotated-sorted-array.py)
| [✔️](ruby%2F0153-find-minimum-in-rotated-sorted-array.rb)
| [✔️](rust%2F0153-find-minimum-in-rotated-sorted-array.rs)
| [✔️](scala%2F0153-find-minimum-in-rotated-sorted-array.scala)
| [✔️](swift%2F0153-find-minimum-in-rotated-sorted-array.swift)
| [✔️](typescript%2F0153-find-minimum-in-rotated-sorted-array.ts)
+[0033 - Search In Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/) | ❌
| [✔️](c%2F0033-search-in-rotated-sorted-array.c)
| [✔️](cpp%2F0033-search-in-rotated-sorted-array.cpp)
| [✔️](csharp%2F0033-search-in-rotated-sorted-array.cs)
| ❌
| [✔️](go%2F0033-search-in-rotated-sorted-array.go)
| ❌
| [✔️](java%2F0033-search-in-rotated-sorted-array.java)
| [✔️](javascript%2F0033-search-in-rotated-sorted-array.js)
| [✔️](kotlin%2F0033-search-in-rotated-sorted-array.kt)
| [✔️](python%2F0033-search-in-rotated-sorted-array.py)
| ❌
| [✔️](rust%2F0033-search-in-rotated-sorted-array.rs)
| [✔️](scala%2F0033-search-in-rotated-sorted-array.scala)
| [✔️](swift%2F0033-search-in-rotated-sorted-array.swift)
| [✔️](typescript%2F0033-search-in-rotated-sorted-array.ts)
+[0081 - Search In Rotated Sorted Array II](https://leetcode.com/problems/search-in-rotated-sorted-array-ii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0081-search-in-rotated-sorted-array-ii.java)
| ❌
| [✔️](kotlin%2F0081-search-in-rotated-sorted-array-ii.kt)
| [✔️](python%2F0081-search-in-rotated-sorted-array-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0981 - Time Based Key Value Store](https://leetcode.com/problems/time-based-key-value-store/) | ❌
| [✔️](c%2F0981-time-based-key-value-store.c)
| [✔️](cpp%2F0981-time-based-key-value-store.cpp)
| [✔️](csharp%2F0981-time-based-key-value-store.cs)
| ❌
| [✔️](go%2F0981-time-based-key-value-store.go)
| ❌
| [✔️](java%2F0981-time-based-key-value-store.java)
| [✔️](javascript%2F0981-time-based-key-value-store.js)
| [✔️](kotlin%2F0981-time-based-key-value-store.kt)
| [✔️](python%2F0981-time-based-key-value-store.py)
| [✔️](ruby%2F0981-Time-Based-Key-Value-Store.rb)
| [✔️](rust%2F0981-time-based-key-value-store.rs)
| ❌
| [✔️](swift%2F0981-time-based-key-value-store.swift)
| [✔️](typescript%2F0981-time-based-key-value-store.ts)
+[0034 - Find First And Last Position of Element In Sorted Array](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | ❌
| ❌
| [✔️](cpp%2F0034-find-first-and-last-position-of-element-in-sorted-array.cpp)
| [✔️](csharp%2F0034-find-first-and-last-position-of-element-in-sorted-array.cs)
| ❌
| [✔️](go%2F0034-find-first-and-last-position-of-element-in-sorted-array.go)
| ❌
| [✔️](java%2F0034-find-first-and-last-position-of-element-in-sorted-array.java)
| [✔️](javascript%2F0034-find-first-and-last-position-of-element-in-sorted-array.js)
| [✔️](kotlin%2F0034-find-first-and-last-position-of-element-in-sorted-array.kt)
| [✔️](python%2F0034-find-first-and-last-position-of-element-in-sorted-array.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0034-find-first-and-last-position-of-element-in-sorted-array.swift)
| ❌
+[1898 - Maximum Number of Removable Characters](https://leetcode.com/problems/maximum-number-of-removable-characters/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1898-maximum-number-of-removable-characters.go)
| ❌
| [✔️](java%2F1898-maximum-number-of-removable-characters.java)
| [✔️](javascript%2F1898-maximum-number-of-removable-characters.js)
| [✔️](kotlin%2F1898-maximum-number-of-removable-characters.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0116 - Populating Next Right Pointers In Each Node](https://leetcode.com/problems/populating-next-right-pointers-in-each-node/) | ❌
| ❌
| [✔️](cpp%2F0116-populating-next-right-pointers-in-each-node.cpp)
| ❌
| ❌
| [✔️](go%2F0116-populating-next-right-pointers-in-each-node.go)
| ❌
| [✔️](java%2F0116-populating-next-right-pointers-in-each-node.java)
| [✔️](javascript%2F0116-populating-next-right-pointers-in-each-node.js)
| [✔️](kotlin%2F0116-populating-next-right-pointers-in-each-node.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1268 - Search Suggestions System](https://leetcode.com/problems/search-suggestions-system/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1268-search-suggestions-system.java)
| [✔️](javascript%2F1268-search-suggestions-system.js)
| [✔️](kotlin%2F1268-search-suggestions-system.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0410 - Split Array Largest Sum](https://leetcode.com/problems/split-array-largest-sum/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0410-split-array-largest-sum.java)
| [✔️](javascript%2F0410-split-array-largest-sum.js)
| [✔️](kotlin%2F0410-split-array-largest-sum.kt)
| [✔️](python%2F0410-split-array-largest-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0004 - Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/) | ❌
| [✔️](c%2F0004-median-of-two-sorted-arrays.c)
| [✔️](cpp%2F0004-median-of-two-sorted-arrays.cpp)
| [✔️](csharp%2F0004-median-of-two-sorted-arrays.cs)
| [✔️](dart%2F0004-median-of-two-sorted-arrays.dart)
| [✔️](go%2F0004-median-of-two-sorted-arrays.go)
| ❌
| [✔️](java%2F0004-median-of-two-sorted-arrays.java)
| [✔️](javascript%2F0004-median-of-two-sorted-arrays.js)
| [✔️](kotlin%2F0004-median-of-two-sorted-arrays.kt)
| [✔️](python%2F0004-median-of-two-sorted-arrays.py)
| ❌
| [✔️](rust%2F0004-median-of-two-sorted-arrays.rs)
| ❌
| [✔️](swift%2F0004-median-of-two-sorted-arrays.swift)
| [✔️](typescript%2F0004-median-of-two-sorted-arrays.ts)
### Linked List
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0206 - Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) | [✔️](c%2F0206-reverse-linked-list.c)
| [✔️](cpp%2F0206-reverse-linked-list.cpp)
| [✔️](csharp%2F0206-reverse-linked-list.cs)
| [✔️](dart%2F0206-reverse-linked-list.dart)
| [✔️](go%2F0206-reverse-linked-list.go)
| [✔️](java%2F0206-reverse-linked-list.java)
| [✔️](javascript%2F0206-reverse-linked-list.js)
| [✔️](kotlin%2F0206-reverse-linked-list.kt)
| [✔️](python%2F0206-reverse-linked-list.py)
| [✔️](ruby%2F0206-reverse-linked-list.rb)
| [✔️](rust%2F0206-reverse-linked-list.rs)
| [✔️](scala%2F0206-reverse-linked-list.scala)
| [✔️](swift%2F0206-reverse-linked-list.swift)
| [✔️](typescript%2F0206-reverse-linked-list.ts)
-[0021 - Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) | [✔️](c%2F0021-merge-two-sorted-lists.c)
| [✔️](cpp%2F0021-merge-two-sorted-lists.cpp)
| [✔️](csharp%2F0021-merge-two-sorted-lists.cs)
| [✔️](dart%2F0021-merge-two-sorted-lists.dart)
| [✔️](go%2F0021-merge-two-sorted-lists.go)
| [✔️](java%2F0021-merge-two-sorted-lists.java)
| [✔️](javascript%2F0021-merge-two-sorted-lists.js)
| [✔️](kotlin%2F0021-merge-two-sorted-lists.kt)
| [✔️](python%2F0021-merge-two-sorted-lists.py)
| [✔️](ruby%2F0021-merge-two-sorted-lists.rb)
| [✔️](rust%2F0021-merge-two-sorted-lists.rs)
| [✔️](scala%2F0021-merge-two-sorted-lists.scala)
| [✔️](swift%2F0021-merge-two-sorted-lists.swift)
| [✔️](typescript%2F0021-merge-two-sorted-lists.ts)
-[0234 - Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/) | ❌
| [✔️](cpp%2F0234-palindrome-linked-list.cpp)
| ❌
| ❌
| [✔️](go%2F0234-palindrome-linked-list.go)
| [✔️](java%2F0234-palindrome-linked-list.java)
| [✔️](javascript%2F0234-palindrome-linked-list.js)
| [✔️](kotlin%2F0234-palindrome-linked-list.kt)
| [✔️](python%2F0234-palindrome-linked-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0203 - Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/) | ❌
| [✔️](cpp%2F0203-remove-linked-list-elements.cpp)
| ❌
| ❌
| [✔️](go%2F0203-remove-linked-list-elements.go)
| [✔️](java%2F0203-remove-linked-list-elements.java)
| [✔️](javascript%2F0203-remove-linked-list-elements.js)
| [✔️](kotlin%2F0203-remove-linked-list-elements.kt)
| [✔️](python%2F0203-remove-linked-list-elements.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0203-remove-linked-list-elements.ts)
-[0083 - Remove Duplicates From Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/) | [✔️](c%2F0083-remove-duplicates-from-sorted-list.c)
| [✔️](cpp%2F0083-remove-duplicates-from-sorted-list.cpp)
| ❌
| ❌
| [✔️](go%2F0083-remove-duplicates-from-sorted-list.go)
| [✔️](java%2F0083-remove-duplicates-from-sorted-list.java)
| [✔️](javascript%2F0083-remove-duplicates-from-sorted-list.js)
| [✔️](kotlin%2F0083-remove-duplicates-from-sorted-list.kt)
| [✔️](python%2F0083-remove-duplicates-from-sorted-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0876 - Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/) | [✔️](c%2F0876-middle-of-the-linked-list.c)
| [✔️](cpp%2F0876-middle-of-the-linked-list.cpp)
| [✔️](csharp%2F0876-middle-of-the-linked-list.cs)
| ❌
| [✔️](go%2F0876-Middle-Of-The-Linked-List.go)
| [✔️](java%2F0876-middle-of-the-linked-list.java)
| [✔️](javascript%2F0876-middle-of-the-linked-list.js)
| [✔️](kotlin%2F0876-middle-of-the-linked-list.kt)
| [✔️](python%2F0876-middle-of-the-linked-list.py)
| ❌
| [✔️](rust%2F0876-middle-of-the-linked-list.rs)
| ❌
| ❌
| [✔️](typescript%2F0876-middle-of-the-linked-list.ts)
-[0160 - Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/) | ❌
| [✔️](cpp%2F0160-intersection-of-two-linked-lists.cpp)
| ❌
| ❌
| [✔️](go%2F0160-intersection-of-two-linked-lists.go)
| [✔️](java%2F0160-intersection-of-two-linked-lists.java)
| [✔️](javascript%2F0160-intersection-of-two-linked-lists.js)
| [✔️](kotlin%2F0160-intersection-of-two-linked-lists.kt)
| [✔️](python%2F0160-intersection-of-two-linked-lists.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0143 - Reorder List](https://leetcode.com/problems/reorder-list/) | [✔️](c%2F0143-reorder-list.c)
| [✔️](cpp%2F0143-reorder-list.cpp)
| [✔️](csharp%2F0143-reorder-list.cs)
| ❌
| [✔️](go%2F0143-reorder-list.go)
| [✔️](java%2F0143-reorder-list.java)
| [✔️](javascript%2F0143-reorder-list.js)
| [✔️](kotlin%2F0143-reorder-list.kt)
| [✔️](python%2F0143-reorder-list.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0143-reorder-list.ts)
-[0019 - Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/) | [✔️](c%2F0019-remove-nth-node-from-end-of-list.c)
| [✔️](cpp%2F0019-remove-nth-node-from-end-of-list.cpp)
| [✔️](csharp%2F0019-remove-nth-node-from-end-of-list.cs)
| ❌
| [✔️](go%2F0019-remove-nth-node-from-end-of-list.go)
| [✔️](java%2F0019-remove-nth-node-from-end-of-list.java)
| [✔️](javascript%2F0019-remove-nth-node-from-end-of-list.js)
| [✔️](kotlin%2F0019-remove-nth-node-from-end-of-list.kt)
| [✔️](python%2F0019-remove-nth-node-from-end-of-list.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0019-remove-nth-node-from-end-of-list.swift)
| [✔️](typescript%2F0019-remove-nth-node-from-end-of-list.ts)
-[0138 - Copy List With Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer/) | [✔️](c%2F0138-copy-list-with-random-pointer.c)
| [✔️](cpp%2F0138-copy-list-with-random-pointer.cpp)
| [✔️](csharp%2F0138-copy-list-with-random-pointer.cs)
| ❌
| [✔️](go%2F0138-copy-list-with-random-pointer.go)
| [✔️](java%2F0138-copy-list-with-random-pointer.java)
| [✔️](javascript%2F0138-copy-list-with-random-pointer.js)
| [✔️](kotlin%2F0138-copy-list-with-random-pointer.kt)
| [✔️](python%2F0138-copy-list-with-random-pointer.py)
| [✔️](ruby%2F0138-copy-list-with-random-pointer.rb)
| ❌
| ❌
| [✔️](swift%2F0138-copy-list-with-random-pointer.swift)
| [✔️](typescript%2F0138-copy-list-with-random-pointer.ts)
-[0707 - Design Linked List](https://leetcode.com/problems/design-linked-list/) | [✔️](c%2F0707-design-linked-list.c)
| ❌
| ❌
| ❌
| [✔️](go%2F0707-design-linked-list.go)
| [✔️](java%2F0707-design-linked-list.java)
| ❌
| [✔️](kotlin%2F0707-design-linked-list.kt)
| [✔️](python%2F0707-design-linked-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1472 - Design Browser History](https://leetcode.com/problems/design-browser-history/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1472-design-browser-history.go)
| ❌
| [✔️](javascript%2F1472-design-browser-history.js)
| [✔️](kotlin%2F1472-design-browser-history.kt)
| [✔️](python%2F1472-design-browser-history.py)
| ❌
| [✔️](rust%2F1472-design-browser-history.rs)
| ❌
| ❌
| [✔️](typescript%2F1472-design-browser-history.ts)
-[0002 - Add Two Numbers](https://leetcode.com/problems/add-two-numbers/) | [✔️](c%2F0002-add-two-numbers.c)
| [✔️](cpp%2F0002-add-two-numbers.cpp)
| [✔️](csharp%2F0002-add-two-numbers.cs)
| ❌
| [✔️](go%2F0002-add-two-numbers.go)
| [✔️](java%2F0002-add-two-numbers.java)
| [✔️](javascript%2F0002-add-two-numbers.js)
| [✔️](kotlin%2F0002-add-two-numbers.kt)
| [✔️](python%2F0002-add-two-numbers.py)
| [✔️](ruby%2F0002-add-two-numbers.rb)
| ❌
| [✔️](scala%2F0002-add-two-numbers.scala)
| [✔️](swift%2F0002-add-two-numbers.swift)
| [✔️](typescript%2F0002-add-two-numbers.ts)
-[0141 - Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) | [✔️](c%2F0141-linked-list-cycle.c)
| [✔️](cpp%2F0141-linked-list-cycle.cpp)
| [✔️](csharp%2F0141-linked-list-cycle.cs)
| ❌
| [✔️](go%2F0141-linked-list-cycle.go)
| [✔️](java%2F0141-linked-list-cycle.java)
| [✔️](javascript%2F0141-linked-list-cycle.js)
| [✔️](kotlin%2F0141-linked-list-cycle.kt)
| [✔️](python%2F0141-linked-list-cycle.py)
| [✔️](ruby%2F0141-linked-list-cycle.rb)
| ❌
| [✔️](scala%2F0141-linked-list-cycle.scala)
| [✔️](swift%2F0141-linked-list-cycle.swift)
| [✔️](typescript%2F0141-linked-list-cycle.ts)
-[0287 - Find The Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/) | [✔️](c%2F0287-find-the-duplicate-number.c)
| [✔️](cpp%2F0287-find-the-duplicate-number.cpp)
| [✔️](csharp%2F0287-find-the-duplicate-number.cs)
| ❌
| [✔️](go%2F0287-find-the-duplicate-number.go)
| [✔️](java%2F0287-find-the-duplicate-number.java)
| [✔️](javascript%2F0287-find-the-duplicate-number.js)
| [✔️](kotlin%2F0287-find-the-duplicate-number.kt)
| [✔️](python%2F0287-find-the-duplicate-number.py)
| [✔️](ruby%2F0287-find-the-duplicate-number.rb)
| ❌
| ❌
| [✔️](swift%2F0287-find-the-duplicate-number.swift)
| [✔️](typescript%2F0287-find-the-duplicate-number.ts)
-[0024 - Swap Nodes In Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0024-swap-nodes-in-pairs.go)
| [✔️](java%2F0024-swap-nodes-in-pairs.java)
| ❌
| ❌
| [✔️](python%2F0024-swap-nodes-in-pairs.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0148 - Sort List](https://leetcode.com/problems/sort-list/) | [✔️](c%2F0148-sort-list.c)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0148-sort-list.java)
| ❌
| ❌
| [✔️](python%2F0148-sort-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0086 - Partition List](https://leetcode.com/problems/partition-list/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0086-partition-list.java)
| ❌
| ❌
| [✔️](python%2F0086-partition-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0061 - Rotate List](https://leetcode.com/problems/rotate-list/) | ❌
| [✔️](cpp%2F0061-rotate-list.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0061-rotate-list.java)
| ❌
| ❌
| [✔️](python%2F0061-rotate-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0092 - Reverse Linked List II](https://leetcode.com/problems/reverse-linked-list-ii/) | ❌
| [✔️](cpp%2F0092-reverse-linked-list-ii.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0092-reverse-linked-list-ii.js)
| ❌
| [✔️](python%2F0092-reverse-linked-list-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0622 - Design Circular Queue](https://leetcode.com/problems/design-circular-queue/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0622-design-circular-queue.go)
| ❌
| ❌
| [✔️](kotlin%2F0622-design-circular-queue.kt)
| [✔️](python%2F0622-design-circular-queue.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0147 - Insertion Sort List](https://leetcode.com/problems/insertion-sort-list/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0147-insertion-sort-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0146 - LRU Cache](https://leetcode.com/problems/lru-cache/) | [✔️](c%2F0146-lru-cache.c)
| [✔️](cpp%2F0146-lru-cache.cpp)
| [✔️](csharp%2F0146-lru-cache.cs)
| ❌
| [✔️](go%2F0146-lru-cache.go)
| [✔️](java%2F0146-lru-cache.java)
| [✔️](javascript%2F0146-lru-cache.js)
| [✔️](kotlin%2F0146-lru-cache.kt)
| [✔️](python%2F0146-lru-cache.py)
| [✔️](ruby%2F0146-lru-cache.rb)
| ❌
| ❌
| ❌
| ❌
-[0023 - Merge K Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/) | [✔️](c%2F0023-merge-k-sorted-lists.c)
| [✔️](cpp%2F0023-merge-k-sorted-lists.cpp)
| [✔️](csharp%2F0023-merge-k-sorted-lists.cs)
| ❌
| [✔️](go%2F0023-merge-k-sorted-lists.go)
| [✔️](java%2F0023-merge-k-sorted-lists.java)
| [✔️](javascript%2F0023-merge-k-sorted-lists.js)
| [✔️](kotlin%2F0023-merge-k-sorted-lists.kt)
| [✔️](python%2F0023-merge-k-sorted-lists.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0023-merge-k-sorted-lists.ts)
-[0025 - Reverse Nodes In K Group](https://leetcode.com/problems/reverse-nodes-in-k-group/) | [✔️](c%2F0025-reverse-nodes-in-k-group.c)
| [✔️](cpp%2F0025-reverse-nodes-in-k-group.cpp)
| [✔️](csharp%2F0025-reverse-nodes-in-k-group.cs)
| ❌
| [✔️](go%2F0025-reverse-nodes-in-k-group.go)
| [✔️](java%2F0025-reverse-nodes-in-k-group.java)
| [✔️](javascript%2F0025-reverse-nodes-in-k-group.js)
| [✔️](kotlin%2F0025-reverse-nodes-in-k-group.kt)
| [✔️](python%2F0025-reverse-nodes-in-k-group.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0025-reverse-nodes-in-k-group.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0206 - Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) | ❌
| [✔️](c%2F0206-reverse-linked-list.c)
| [✔️](cpp%2F0206-reverse-linked-list.cpp)
| [✔️](csharp%2F0206-reverse-linked-list.cs)
| [✔️](dart%2F0206-reverse-linked-list.dart)
| [✔️](go%2F0206-reverse-linked-list.go)
| ❌
| [✔️](java%2F0206-reverse-linked-list.java)
| [✔️](javascript%2F0206-reverse-linked-list.js)
| [✔️](kotlin%2F0206-reverse-linked-list.kt)
| [✔️](python%2F0206-reverse-linked-list.py)
| [✔️](ruby%2F0206-reverse-linked-list.rb)
| [✔️](rust%2F0206-reverse-linked-list.rs)
| [✔️](scala%2F0206-reverse-linked-list.scala)
| [✔️](swift%2F0206-reverse-linked-list.swift)
| [✔️](typescript%2F0206-reverse-linked-list.ts)
+[0021 - Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) | ❌
| [✔️](c%2F0021-merge-two-sorted-lists.c)
| [✔️](cpp%2F0021-merge-two-sorted-lists.cpp)
| [✔️](csharp%2F0021-merge-two-sorted-lists.cs)
| [✔️](dart%2F0021-merge-two-sorted-lists.dart)
| [✔️](go%2F0021-merge-two-sorted-lists.go)
| ❌
| [✔️](java%2F0021-merge-two-sorted-lists.java)
| [✔️](javascript%2F0021-merge-two-sorted-lists.js)
| [✔️](kotlin%2F0021-merge-two-sorted-lists.kt)
| [✔️](python%2F0021-merge-two-sorted-lists.py)
| [✔️](ruby%2F0021-merge-two-sorted-lists.rb)
| [✔️](rust%2F0021-merge-two-sorted-lists.rs)
| [✔️](scala%2F0021-merge-two-sorted-lists.scala)
| [✔️](swift%2F0021-merge-two-sorted-lists.swift)
| [✔️](typescript%2F0021-merge-two-sorted-lists.ts)
+[0234 - Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/) | ❌
| [✔️](c%2F0234-palindrome-linked-list.c)
| [✔️](cpp%2F0234-palindrome-linked-list.cpp)
| ❌
| ❌
| [✔️](go%2F0234-palindrome-linked-list.go)
| ❌
| [✔️](java%2F0234-palindrome-linked-list.java)
| [✔️](javascript%2F0234-palindrome-linked-list.js)
| [✔️](kotlin%2F0234-palindrome-linked-list.kt)
| [✔️](python%2F0234-palindrome-linked-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0203 - Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/) | ❌
| ❌
| [✔️](cpp%2F0203-remove-linked-list-elements.cpp)
| [✔️](csharp%2F0203-remove-linked-list-elements.cs)
| ❌
| [✔️](go%2F0203-remove-linked-list-elements.go)
| ❌
| [✔️](java%2F0203-remove-linked-list-elements.java)
| [✔️](javascript%2F0203-remove-linked-list-elements.js)
| [✔️](kotlin%2F0203-remove-linked-list-elements.kt)
| [✔️](python%2F0203-remove-linked-list-elements.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0203-remove-linked-list-elements.ts)
+[0083 - Remove Duplicates From Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/) | ❌
| [✔️](c%2F0083-remove-duplicates-from-sorted-list.c)
| [✔️](cpp%2F0083-remove-duplicates-from-sorted-list.cpp)
| ❌
| ❌
| [✔️](go%2F0083-remove-duplicates-from-sorted-list.go)
| ❌
| [✔️](java%2F0083-remove-duplicates-from-sorted-list.java)
| [✔️](javascript%2F0083-remove-duplicates-from-sorted-list.js)
| [✔️](kotlin%2F0083-remove-duplicates-from-sorted-list.kt)
| [✔️](python%2F0083-remove-duplicates-from-sorted-list.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0083-remove-duplicates-from-sorted-list.swift)
| ❌
+[0876 - Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/) | ❌
| [✔️](c%2F0876-middle-of-the-linked-list.c)
| [✔️](cpp%2F0876-middle-of-the-linked-list.cpp)
| [✔️](csharp%2F0876-middle-of-the-linked-list.cs)
| ❌
| [✔️](go%2F0876-middle-of-the-linked-list.go)
| ❌
| [✔️](java%2F0876-middle-of-the-linked-list.java)
| [✔️](javascript%2F0876-middle-of-the-linked-list.js)
| [✔️](kotlin%2F0876-middle-of-the-linked-list.kt)
| [✔️](python%2F0876-middle-of-the-linked-list.py)
| ❌
| [✔️](rust%2F0876-middle-of-the-linked-list.rs)
| ❌
| [✔️](swift%2F0876-middle-of-the-linked-list.swift)
| [✔️](typescript%2F0876-middle-of-the-linked-list.ts)
+[0160 - Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/) | ❌
| [✔️](c%2F0160-intersection-of-two-linked-lists.c)
| [✔️](cpp%2F0160-intersection-of-two-linked-lists.cpp)
| ❌
| ❌
| [✔️](go%2F0160-intersection-of-two-linked-lists.go)
| ❌
| [✔️](java%2F0160-intersection-of-two-linked-lists.java)
| [✔️](javascript%2F0160-intersection-of-two-linked-lists.js)
| [✔️](kotlin%2F0160-intersection-of-two-linked-lists.kt)
| [✔️](python%2F0160-intersection-of-two-linked-lists.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0143 - Reorder List](https://leetcode.com/problems/reorder-list/) | ❌
| [✔️](c%2F0143-reorder-list.c)
| [✔️](cpp%2F0143-reorder-list.cpp)
| [✔️](csharp%2F0143-reorder-list.cs)
| ❌
| [✔️](go%2F0143-reorder-list.go)
| ❌
| [✔️](java%2F0143-reorder-list.java)
| [✔️](javascript%2F0143-reorder-list.js)
| [✔️](kotlin%2F0143-reorder-list.kt)
| [✔️](python%2F0143-reorder-list.py)
| ❌
| [✔️](rust%2F0143-reorder-list.rs)
| ❌
| [✔️](swift%2F0143-reorder-list.swift)
| [✔️](typescript%2F0143-reorder-list.ts)
+[2130 - Maximum Twin Sum Of A Linked List](https://leetcode.com/problems/maximum-twin-sum-of-a-linked-list/) | ❌
| ❌
| [✔️](cpp%2F2130-maximum-twin-sum-of-a-linked-list.cpp)
| ❌
| ❌
| [✔️](go%2F2130-maximum-twin-sum-of-a-linked-list.go)
| ❌
| [✔️](java%2F2130-maximum-twin-sum-of-a-linked-list.java)
| [✔️](javascript%2F2130-maximum-twin-sum-of-a-linked-list.js)
| [✔️](kotlin%2F2130-maximum-twin-sum-of-a-linked-list.kt)
| [✔️](python%2F2130-maximum-twin-sum-of-a-linked-list.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F2130-maximum-twin-sum-of-a-linked-list.swift)
| ❌
+[0019 - Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/) | ❌
| [✔️](c%2F0019-remove-nth-node-from-end-of-list.c)
| [✔️](cpp%2F0019-remove-nth-node-from-end-of-list.cpp)
| [✔️](csharp%2F0019-remove-nth-node-from-end-of-list.cs)
| ❌
| [✔️](go%2F0019-remove-nth-node-from-end-of-list.go)
| ❌
| [✔️](java%2F0019-remove-nth-node-from-end-of-list.java)
| [✔️](javascript%2F0019-remove-nth-node-from-end-of-list.js)
| [✔️](kotlin%2F0019-remove-nth-node-from-end-of-list.kt)
| [✔️](python%2F0019-remove-nth-node-from-end-of-list.py)
| ❌
| [✔️](rust%2F0019-remove-nth-node-from-end-of-list.rs)
| ❌
| [✔️](swift%2F0019-remove-nth-node-from-end-of-list.swift)
| [✔️](typescript%2F0019-remove-nth-node-from-end-of-list.ts)
+[1721 - Swapping Nodes in a Linked List](https://leetcode.com/problems/swapping-nodes-in-a-linked-list/) | ❌
| ❌
| [✔️](cpp%2F1721-swapping-nodes-in-a-linked-list.cpp)
| ❌
| ❌
| [✔️](go%2F1721-swapping-nodes-in-a-linked-list.go)
| ❌
| [✔️](java%2F1721-swapping-nodes-in-a-linked-list.java)
| ❌
| [✔️](kotlin%2F1721-swapping-nodes-in-a-linked-list.kt)
| [✔️](python%2F1721-swapping-nodes-in-a-linked-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0460 - LFU Cache](https://leetcode.com/problems/lfu-cache/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0460-lfu-cache.java)
| [✔️](javascript%2F0460-lfu-cache.js)
| [✔️](kotlin%2F0460-lfu-cache.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0138 - Copy List With Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer/) | ❌
| [✔️](c%2F0138-copy-list-with-random-pointer.c)
| [✔️](cpp%2F0138-copy-list-with-random-pointer.cpp)
| [✔️](csharp%2F0138-copy-list-with-random-pointer.cs)
| ❌
| [✔️](go%2F0138-copy-list-with-random-pointer.go)
| ❌
| [✔️](java%2F0138-copy-list-with-random-pointer.java)
| [✔️](javascript%2F0138-copy-list-with-random-pointer.js)
| [✔️](kotlin%2F0138-copy-list-with-random-pointer.kt)
| [✔️](python%2F0138-copy-list-with-random-pointer.py)
| [✔️](ruby%2F0138-copy-list-with-random-pointer.rb)
| ❌
| ❌
| [✔️](swift%2F0138-copy-list-with-random-pointer.swift)
| [✔️](typescript%2F0138-copy-list-with-random-pointer.ts)
+[0707 - Design Linked List](https://leetcode.com/problems/design-linked-list/) | ❌
| [✔️](c%2F0707-design-linked-list.c)
| ❌
| ❌
| ❌
| [✔️](go%2F0707-design-linked-list.go)
| ❌
| [✔️](java%2F0707-design-linked-list.java)
| [✔️](javascript%2F0707-design-linked-list.js)
| [✔️](kotlin%2F0707-design-linked-list.kt)
| [✔️](python%2F0707-design-linked-list.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0707-design-linked-list.swift)
| ❌
+[1472 - Design Browser History](https://leetcode.com/problems/design-browser-history/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1472-design-browser-history.go)
| ❌
| [✔️](java%2F1472-design-browser-history.java)
| [✔️](javascript%2F1472-design-browser-history.js)
| [✔️](kotlin%2F1472-design-browser-history.kt)
| [✔️](python%2F1472-design-browser-history.py)
| ❌
| [✔️](rust%2F1472-design-browser-history.rs)
| ❌
| [✔️](swift%2F1472-design-browser-history.swift)
| [✔️](typescript%2F1472-design-browser-history.ts)
+[0002 - Add Two Numbers](https://leetcode.com/problems/add-two-numbers/) | ❌
| [✔️](c%2F0002-add-two-numbers.c)
| [✔️](cpp%2F0002-add-two-numbers.cpp)
| [✔️](csharp%2F0002-add-two-numbers.cs)
| [✔️](dart%2F0002-add-two-numbers.dart)
| [✔️](go%2F0002-add-two-numbers.go)
| ❌
| [✔️](java%2F0002-add-two-numbers.java)
| [✔️](javascript%2F0002-add-two-numbers.js)
| [✔️](kotlin%2F0002-add-two-numbers.kt)
| [✔️](python%2F0002-add-two-numbers.py)
| [✔️](ruby%2F0002-add-two-numbers.rb)
| [✔️](rust%2F0002-add-two-numbers.rs)
| [✔️](scala%2F0002-add-two-numbers.scala)
| [✔️](swift%2F0002-add-two-numbers.swift)
| [✔️](typescript%2F0002-add-two-numbers.ts)
+[0141 - Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) | ❌
| [✔️](c%2F0141-linked-list-cycle.c)
| [✔️](cpp%2F0141-linked-list-cycle.cpp)
| [✔️](csharp%2F0141-linked-list-cycle.cs)
| ❌
| [✔️](go%2F0141-linked-list-cycle.go)
| ❌
| [✔️](java%2F0141-linked-list-cycle.java)
| [✔️](javascript%2F0141-linked-list-cycle.js)
| [✔️](kotlin%2F0141-linked-list-cycle.kt)
| [✔️](python%2F0141-linked-list-cycle.py)
| [✔️](ruby%2F0141-linked-list-cycle.rb)
| ❌
| [✔️](scala%2F0141-linked-list-cycle.scala)
| [✔️](swift%2F0141-linked-list-cycle.swift)
| [✔️](typescript%2F0141-linked-list-cycle.ts)
+[0287 - Find The Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/) | ❌
| [✔️](c%2F0287-find-the-duplicate-number.c)
| [✔️](cpp%2F0287-find-the-duplicate-number.cpp)
| [✔️](csharp%2F0287-find-the-duplicate-number.cs)
| ❌
| [✔️](go%2F0287-find-the-duplicate-number.go)
| ❌
| [✔️](java%2F0287-find-the-duplicate-number.java)
| [✔️](javascript%2F0287-find-the-duplicate-number.js)
| [✔️](kotlin%2F0287-find-the-duplicate-number.kt)
| [✔️](python%2F0287-find-the-duplicate-number.py)
| [✔️](ruby%2F0287-find-the-duplicate-number.rb)
| [✔️](rust%2F0287-find-the-duplicate-number.rs)
| ❌
| [✔️](swift%2F0287-find-the-duplicate-number.swift)
| [✔️](typescript%2F0287-find-the-duplicate-number.ts)
+[0024 - Swap Nodes In Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/) | ❌
| [✔️](c%2F0024-swap-nodes-in-pairs.c)
| [✔️](cpp%2F0024-swap-nodes-in-pairs.cpp)
| ❌
| ❌
| [✔️](go%2F0024-swap-nodes-in-pairs.go)
| ❌
| [✔️](java%2F0024-swap-nodes-in-pairs.java)
| ❌
| [✔️](kotlin%2F0024-swap-nodes-in-pairs.kt)
| [✔️](python%2F0024-swap-nodes-in-pairs.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0148 - Sort List](https://leetcode.com/problems/sort-list/) | ❌
| [✔️](c%2F0148-sort-list.c)
| [✔️](cpp%2F0148-sort-list.cpp)
| [✔️](csharp%2F0148-sort-list.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0148-sort-list.java)
| ❌
| [✔️](kotlin%2F0148-sort-list.kt)
| [✔️](python%2F0148-sort-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0086 - Partition List](https://leetcode.com/problems/partition-list/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0086-partition-list.java)
| ❌
| [✔️](kotlin%2F0086-partition-list.kt)
| [✔️](python%2F0086-partition-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0061 - Rotate List](https://leetcode.com/problems/rotate-list/) | ❌
| ❌
| [✔️](cpp%2F0061-rotate-list.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0061-rotate-list.java)
| ❌
| [✔️](kotlin%2F0061-rotate-list.kt)
| [✔️](python%2F0061-rotate-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0092 - Reverse Linked List II](https://leetcode.com/problems/reverse-linked-list-ii/) | ❌
| ❌
| [✔️](cpp%2F0092-reverse-linked-list-ii.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0092-reverse-linked-list-ii.java)
| [✔️](javascript%2F0092-reverse-linked-list-ii.js)
| [✔️](kotlin%2F0092-reverse-linked-list-ii.kt)
| [✔️](python%2F0092-reverse-linked-list-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0622 - Design Circular Queue](https://leetcode.com/problems/design-circular-queue/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0622-design-circular-queue.go)
| ❌
| [✔️](java%2F0622-design-circular-queue.java)
| ❌
| [✔️](kotlin%2F0622-design-circular-queue.kt)
| [✔️](python%2F0622-design-circular-queue.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0147 - Insertion Sort List](https://leetcode.com/problems/insertion-sort-list/) | ❌
| ❌
| [✔️](cpp%2F0147-insertion-sort-list.cpp)
| ❌
| ❌
| [✔️](go%2F0147-insertion-sort-list.go)
| ❌
| [✔️](java%2F0147-insertion-sort-list.java)
| ❌
| [✔️](kotlin%2F0147-insertion-sort-list.kt)
| [✔️](python%2F0147-insertion-sort-list.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0725 - Split Linked List in Parts](https://leetcode.com/problems/split-linked-list-in-parts/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0725-split-linked-list-in-parts.java)
| ❌
| [✔️](kotlin%2F0725-split-linked-list-in-parts.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0146 - LRU Cache](https://leetcode.com/problems/lru-cache/) | ❌
| [✔️](c%2F0146-lru-cache.c)
| [✔️](cpp%2F0146-lru-cache.cpp)
| [✔️](csharp%2F0146-lru-cache.cs)
| ❌
| [✔️](go%2F0146-lru-cache.go)
| ❌
| [✔️](java%2F0146-lru-cache.java)
| [✔️](javascript%2F0146-lru-cache.js)
| [✔️](kotlin%2F0146-lru-cache.kt)
| [✔️](python%2F0146-lru-cache.py)
| [✔️](ruby%2F0146-lru-cache.rb)
| ❌
| ❌
| [✔️](swift%2F0146-lru-cache.swift)
| [✔️](typescript%2F0146-lru-cache.ts)
+[0023 - Merge K Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/) | ❌
| [✔️](c%2F0023-merge-k-sorted-lists.c)
| [✔️](cpp%2F0023-merge-k-sorted-lists.cpp)
| [✔️](csharp%2F0023-merge-k-sorted-lists.cs)
| ❌
| [✔️](go%2F0023-merge-k-sorted-lists.go)
| ❌
| [✔️](java%2F0023-merge-k-sorted-lists.java)
| [✔️](javascript%2F0023-merge-k-sorted-lists.js)
| [✔️](kotlin%2F0023-merge-k-sorted-lists.kt)
| [✔️](python%2F0023-merge-k-sorted-lists.py)
| ❌
| [✔️](rust%2F0023-merge-k-sorted-lists.rs)
| ❌
| [✔️](swift%2F0023-merge-k-sorted-lists.swift)
| [✔️](typescript%2F0023-merge-k-sorted-lists.ts)
+[0025 - Reverse Nodes In K Group](https://leetcode.com/problems/reverse-nodes-in-k-group/) | ❌
| [✔️](c%2F0025-reverse-nodes-in-k-group.c)
| [✔️](cpp%2F0025-reverse-nodes-in-k-group.cpp)
| [✔️](csharp%2F0025-reverse-nodes-in-k-group.cs)
| ❌
| [✔️](go%2F0025-reverse-nodes-in-k-group.go)
| ❌
| [✔️](java%2F0025-reverse-nodes-in-k-group.java)
| [✔️](javascript%2F0025-reverse-nodes-in-k-group.js)
| [✔️](kotlin%2F0025-reverse-nodes-in-k-group.kt)
| [✔️](python%2F0025-reverse-nodes-in-k-group.py)
| ❌
| [✔️](rust%2F0025-reverse-nodes-in-k-group.rs)
| ❌
| [✔️](swift%2F0025-reverse-nodes-in-k-group.swift)
| [✔️](typescript%2F0025-reverse-nodes-in-k-group.ts)
### Trees
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0094 - Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/) | [✔️](c%2F0094-binary-tree-inorder-traversal.c)
| [✔️](cpp%2F0094-binary-tree-inorder-traversal.cpp)
| [✔️](csharp%2F0094-binary-tree-inorder-traversal.cs)
| ❌
| [✔️](go%2F0094-binary-tree-inorder-traversal.go)
| [✔️](java%2F0094-binary-tree-inorder-traversal.java)
| [✔️](javascript%2F0094-binary-tree-inorder-traversal.js)
| [✔️](kotlin%2F0094-binary-tree-inorder-traversal.kt)
| [✔️](python%2F0094-binary-tree-inorder-traversal.py)
| [✔️](ruby%2F0094-binary-tree-inorder-traversal.rb)
| [✔️](rust%2F0094-binary-tree-inorder-traversal.rs)
| ❌
| [✔️](swift%2F0094-binary-tree-inorder-traversal.swift)
| [✔️](typescript%2F0094-binary-tree-inorder-traversal.ts)
-[0226 - Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/) | [✔️](c%2F0226-invert-binary-tree.c)
| [✔️](cpp%2F0226-invert-binary-tree.cpp)
| [✔️](csharp%2F0226-invert-binary-tree.cs)
| ❌
| [✔️](go%2F0226-invert-binary-tree.go)
| [✔️](java%2F0226-invert-binary-tree.java)
| [✔️](javascript%2F0226-invert-binary-tree.js)
| [✔️](kotlin%2F0226-invert-binary-tree.kt)
| [✔️](python%2F0226-invert-binary-tree.py)
| [✔️](ruby%2F0226-invert-binary-tree.rb)
| ❌
| ❌
| [✔️](swift%2F0226-invert-binary-tree.swift)
| [✔️](typescript%2F0226-invert-binary-tree.ts)
-[0104 - Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/) | [✔️](c%2F0104-maximum-depth-of-binary-tree.c)
| [✔️](cpp%2F0104-maximum-depth-of-binary-tree.cpp)
| [✔️](csharp%2F0104-maximum-depth-of-binary-tree.cs)
| ❌
| [✔️](go%2F0104-maximum-depth-of-binary-tree.go)
| [✔️](java%2F0104-maximum-depth-of-binary-tree.java)
| [✔️](javascript%2F0104-maximum-depth-of-binary-tree.js)
| [✔️](kotlin%2F0104-maximum-depth-of-binary-tree.kt)
| [✔️](python%2F0104-maximum-depth-of-binary-tree.py)
| [✔️](ruby%2F0104-maximum-depth-of-binary-tree.rb)
| [✔️](rust%2F0104-maximum-depth-of-binary-tree.rs)
| ❌
| [✔️](swift%2F0104-maximum-depth-of-binary-tree.swift)
| [✔️](typescript%2F0104-maximum-depth-of-binary-tree.ts)
-[0543 - Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/) | [✔️](c%2F0543-diameter-of-binary-tree.c)
| [✔️](cpp%2F0543-diameter-of-binary-tree.cpp)
| [✔️](csharp%2F0543-diameter-of-binary-tree.cs)
| ❌
| [✔️](go%2F0543-diameter-of-binary-tree.go)
| [✔️](java%2F0543-diameter-of-binary-tree.java)
| [✔️](javascript%2F0543-diameter-of-binary-tree.js)
| [✔️](kotlin%2F0543-diameter-of-binary-tree.kt)
| [✔️](python%2F0543-diameter-of-binary-tree.py)
| [✔️](ruby%2F0543-diameter-of-binary-tree.rb)
| ❌
| ❌
| [✔️](swift%2F0543-diameter-of-binary-tree.swift)
| [✔️](typescript%2F0543-diameter-of-binary-tree.ts)
-[0110 - Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/) | [✔️](c%2F0110-balanced-binary-tree.c)
| [✔️](cpp%2F0110-balanced-binary-tree.cpp)
| [✔️](csharp%2F0110-balanced-binary-tree.cs)
| ❌
| [✔️](go%2F0110-balanced-binary-tree.go)
| [✔️](java%2F0110-balanced-binary-tree.java)
| [✔️](javascript%2F0110-balanced-binary-tree.js)
| [✔️](kotlin%2F0110-balanced-binary-tree.kt)
| [✔️](python%2F0110-balanced-binary-tree.py)
| [✔️](ruby%2F0110-balanced-binary-tree.rb)
| ❌
| ❌
| [✔️](swift%2F0110-balanced-binary-tree.swift)
| [✔️](typescript%2F0110-balanced-binary-tree.ts)
-[0100 - Same Tree](https://leetcode.com/problems/same-tree/) | [✔️](c%2F0100-same-tree.c)
| [✔️](cpp%2F0100-same-tree.cpp)
| [✔️](csharp%2F0100-same-tree.cs)
| ❌
| [✔️](go%2F0100-same-tree.go)
| [✔️](java%2F0100-same-tree.java)
| [✔️](javascript%2F0100-same-tree.js)
| [✔️](kotlin%2F0100-same-tree.kt)
| [✔️](python%2F0100-same-tree.py)
| [✔️](ruby%2F0100-same-tree.rb)
| [✔️](rust%2F0100-same-tree.rs)
| ❌
| [✔️](swift%2F0100-same-tree.swift)
| [✔️](typescript%2F0100-same-tree.ts)
-[0572 - Subtree of Another Tree](https://leetcode.com/problems/subtree-of-another-tree/) | [✔️](c%2F0572-subtree-of-another-tree.c)
| [✔️](cpp%2F0572-subtree-of-another-tree.cpp)
| [✔️](csharp%2F0572-subtree-of-another-tree.cs)
| ❌
| [✔️](go%2F0572-subtree-of-another-tree.go)
| [✔️](java%2F0572-subtree-of-another-tree.java)
| [✔️](javascript%2F0572-subtree-of-another-tree.js)
| [✔️](kotlin%2F0572-subtree-of-another-tree.kt)
| [✔️](python%2F0572-subtree-of-another-tree.py)
| [✔️](ruby%2F0572-subtree-of-another-tree.rb)
| ❌
| [✔️](scala%2F0572-subtree-of-another-tree.scala)
| [✔️](swift%2F0572-subtree-of-another-tree.swift)
| [✔️](typescript%2F0572-subtree-of-another-tree.ts)
-[0108 - Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/) | [✔️](c%2F0108-convert-sorted-array-to-binary-search-tree.c)
| ❌
| ❌
| ❌
| [✔️](go%2F0108-convert-sorted-array-to-binary-search-tree.go)
| [✔️](java%2F0108-convert-sorted-array-to-binary-search-tree.java)
| [✔️](javascript%2F0108-convert-sorted-array-to-binary-search-tree.js)
| [✔️](kotlin%2F0108-convert-sorted-array-to-binary-search-tree.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0617 - Merge Two Binary Trees](https://leetcode.com/problems/merge-two-binary-trees/) | [✔️](c%2F0617-merge-two-binary-trees.c)
| ❌
| ❌
| [✔️](dart%2F0617-merge-two-binary-trees.dart)
| [✔️](go%2F0617-merge-two-binary-trees.go)
| [✔️](java%2F0617-merge-two-binary-trees.java)
| [✔️](javascript%2F0617-merge-two-binary-trees.js)
| [✔️](kotlin%2F0617-merge-two-binary-trees.kt)
| [✔️](python%2F0617-merge-two-binary-trees.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0112 - Path Sum](https://leetcode.com/problems/path-sum/) | [✔️](c%2F0112-path-sum.c)
| ❌
| [✔️](csharp%2F0112-path-sum.cs)
| ❌
| [✔️](go%2F0112-path-sum.go)
| [✔️](java%2F0112-path-sum.java)
| [✔️](javascript%2F0112-path-sum.js)
| [✔️](kotlin%2F0112-path-sum.kt)
| [✔️](python%2F0112-path-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0112-path-sum.swift)
| ❌
-[0606 - Construct String From Binary Tree](https://leetcode.com/problems/construct-string-from-binary-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0606-construct-string-from-binary-tree.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0235 - Lowest Common Ancestor of a Binary Search Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) | [✔️](c%2F0235-lowest-common-ancestor-of-a-binary-search-tree.c)
| [✔️](cpp%2F0235-lowest-common-ancestor-of-a-binary-search-tree.cpp)
| [✔️](csharp%2F0235-lowest-common-ancestor-of-a-binary-search-tree.cs)
| ❌
| [✔️](go%2F0235-lowest-common-ancestor-of-a-binary-search-tree.go)
| [✔️](java%2F0235-lowest-common-ancestor-of-a-binary-search-tree.java)
| [✔️](javascript%2F0235-lowest-common-ancestor-of-a-binary-search-tree.js)
| [✔️](kotlin%2F0235-lowest-common-ancestor-of-a-binary-search-tree.kt)
| [✔️](python%2F0235-lowest-common-ancestor-of-a-binary-search-tree.py)
| [✔️](ruby%2F0235-lowest-common-ancestor-of-a-binary-search-tree.rb)
| ❌
| [✔️](scala%2F0235-lowest-common-ancestor-of-a-binary-search-tree.scala)
| [✔️](swift%2F0235-lowest-common-ancestor-of-a-binary-search-tree.swift)
| [✔️](typescript%2F0235-lowest-common-ancestor-of-a-binary-search-tree.ts)
-[0701 - Insert into a Binary Search Tree](https://leetcode.com/problems/insert-into-a-binary-search-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0701-insert-into-a-binary-search-tree.kt)
| [✔️](python%2F0701-insert-into-a-binary-search-tree.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0450 - Delete Node in a BST](https://leetcode.com/problems/delete-node-in-a-bst/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0450-delete-node-in-a-bst.kt)
| [✔️](python%2F0450-delete-node-in-a-bst.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0102 - Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) | [✔️](c%2F0102-binary-tree-level-order-traversal.c)
| [✔️](cpp%2F0102-binary-tree-level-order-traversal.cpp)
| [✔️](csharp%2F0102-binary-tree-level-order-traversal.cs)
| ❌
| [✔️](go%2F0102-binary-tree-level-order-traversal.go)
| [✔️](java%2F0102-binary-tree-level-order-traversal.java)
| [✔️](javascript%2F0102-binary-tree-level-order-traversal.js)
| [✔️](kotlin%2F0102-binary-tree-level-order-traversal.kt)
| [✔️](python%2F0102-binary-tree-level-order-traversal.py)
| [✔️](ruby%2F0102-binary-tree-level-order-traversal.rb)
| [✔️](rust%2F0102-binary-tree-level-order-traversal.rs)
| ❌
| [✔️](swift%2F0102-binary-tree-level-order-traversal.swift)
| [✔️](typescript%2F0102-binary-tree-level-order-traversal.ts)
-[0199 - Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/) | [✔️](c%2F0199-binary-tree-right-side-view.c)
| [✔️](cpp%2F0199-binary-tree-right-side-view.cpp)
| [✔️](csharp%2F0199-binary-tree-right-side-view.cs)
| ❌
| [✔️](go%2F0199-binary-tree-right-side-view.go)
| [✔️](java%2F0199-binary-tree-right-side-view.java)
| [✔️](javascript%2F0199-binary-tree-right-side-view.js)
| [✔️](kotlin%2F0199-binary-tree-right-side-view.kt)
| [✔️](python%2F0199-binary-tree-right-side-view.py)
| ❌
| [✔️](rust%2F0199-binary-tree-right-side-view.rs)
| ❌
| [✔️](swift%2F0199-binary-tree-right-side-view.swift)
| [✔️](typescript%2F0199-binary-tree-right-side-view.ts)
-[1448 - Count Good Nodes In Binary Tree](https://leetcode.com/problems/count-good-nodes-in-binary-tree/) | [✔️](c%2F1448-Count-Good-Nodes-in-Binary-Tree.c)
| [✔️](cpp%2F1448-Count-Good-Nodes-In-Binary-Tree.cpp)
| [✔️](csharp%2F1448-Count-Good-Nodes-in-Binary-Tree.cs)
| ❌
| [✔️](go%2F1448-count-good-nodes-in-binary-tree.go)
| [✔️](java%2F1448-Count-Good-Nodes-in-Binary-Tree.java)
| [✔️](javascript%2F1448-Count-Good-Nodes-in-Binary-Tree.js)
| [✔️](kotlin%2F1448-Count-Good-Nodes-In-Binary-Tree.kt)
| [✔️](python%2F1448-count-good-nodes-in-binary-tree.py)
| ❌
| [✔️](rust%2F1448-count-good-nodes-in-binary-tree.rs)
| ❌
| [✔️](swift%2F1448-count-good-nodes-in-binary-tree.swift)
| [✔️](typescript%2F1448-Count-Good-Nodes-in-Binary-Tree.ts)
-[0098 - Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/) | [✔️](c%2F0098-validate-binary-search-tree.c)
| [✔️](cpp%2F0098-validate-binary-search-tree.cpp)
| [✔️](csharp%2F0098-validate-binary-search-tree.cs)
| ❌
| [✔️](go%2F0098-validate-binary-search-tree.go)
| [✔️](java%2F0098-validate-binary-search-tree.java)
| [✔️](javascript%2F0098-validate-binary-search-tree.js)
| [✔️](kotlin%2F0098-validate-binary-search-tree.kt)
| [✔️](python%2F0098-validate-binary-search-tree.py)
| ❌
| [✔️](rust%2F0098-validate-binary-search-tree.rs)
| ❌
| [✔️](swift%2F0098-validate-binary-search-tree.swift)
| [✔️](typescript%2F0098-validate-binary-search-tree.ts)
-[0230 - Kth Smallest Element In a Bst](https://leetcode.com/problems/kth-smallest-element-in-a-bst/) | [✔️](c%2F0230-kth-smallest-element-in-a-bst.c)
| [✔️](cpp%2F0230-kth-smallest-element-in-a-bst.cpp)
| [✔️](csharp%2F0230-kth-smallest-element-in-a-bst.cs)
| ❌
| [✔️](go%2F0230-kth-smallest-element-in-a-bst.go)
| [✔️](java%2F0230-kth-smallest-element-in-a-bst.java)
| [✔️](javascript%2F0230-kth-smallest-element-in-a-bst.js)
| [✔️](kotlin%2F0230-kth-smallest-element-in-a-bst.kt)
| [✔️](python%2F0230-kth-smallest-element-in-a-bst.py)
| ❌
| ❌
| [✔️](scala%2F0230-kth-smallest-element-in-a-bst.scala)
| [✔️](swift%2F0230-kth-smallest-element-in-a-bst.swift)
| [✔️](typescript%2F0230-kth-smallest-element-in-a-bst.ts)
-[0105 - Construct Binary Tree From Preorder And Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) | [✔️](c%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.c)
| [✔️](cpp%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.cpp)
| [✔️](csharp%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.cs)
| ❌
| [✔️](go%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.go)
| [✔️](java%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.java)
| [✔️](javascript%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.js)
| [✔️](kotlin%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.kt)
| [✔️](python%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.ts)
-[0096 - Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/) | [✔️](c%2F0096-unique-binary-search-trees.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0129 - Sum Root to Leaf Numbers](https://leetcode.com/problems/sum-root-to-leaf-numbers/) | [✔️](c%2F0129-sum-root-to-leaf-numbers.c)
| [✔️](cpp%2F0129-sum-root-to-leaf-numbers.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0129-sum-root-to-leaf-numbers.java)
| ❌
| [✔️](kotlin%2F0129-sum-root-to-leaf-numbers.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0337 - House Robber III](https://leetcode.com/problems/house-robber-iii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0951 - Flip Equivalent Binary Trees](https://leetcode.com/problems/flip-equivalent-binary-trees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1993 - Operations On Tree](https://leetcode.com/problems/operations-on-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0894 - All Possible Full Binary Trees](https://leetcode.com/problems/all-possible-full-binary-trees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0894-all-possible-full-binary-trees.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0513 - Find Bottom Left Tree Value](https://leetcode.com/problems/find-bottom-left-tree-value/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0513-find-bottom-left-tree-value.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0669 - Trim a Binary Search Tree](https://leetcode.com/problems/trim-a-binary-search-tree/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0669-trim-a-binary-search-tree.go)
| [✔️](java%2F0669-trim-a-binary-search-tree.java)
| [✔️](javascript%2F0669-trim-a-binary-search-tree.js)
| [✔️](kotlin%2F0669-trim-a-binary-search-tree.kt)
| [✔️](python%2F0669-trim-a-binary-search-tree.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0669-trim-a-binary-search-tree.ts)
-[0173 - Binary Search Tree Iterator](https://leetcode.com/problems/binary-search-tree-iterator/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0173-binary-search-tree-iterator.java)
| [✔️](javascript%2F0173-binary-search-tree-iterator.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0538 - Convert Bst to Greater Tree](https://leetcode.com/problems/convert-bst-to-greater-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0124 - Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/) | [✔️](c%2F0124-binary-tree-maximum-path-sum.c)
| [✔️](cpp%2F0124-binary-tree-maximum-path-sum.cpp)
| [✔️](csharp%2F0124-binary-tree-maximum-path-sum.cs)
| ❌
| [✔️](go%2F0124-binary-tree-maximum-path-sum.go)
| [✔️](java%2F0124-binary-tree-maximum-path-sum.java)
| [✔️](javascript%2F0124-binary-tree-maximum-path-sum.js)
| [✔️](kotlin%2F0124-binary-tree-maximum-path-sum.kt)
| [✔️](python%2F0124-binary-tree-maximum-path-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0124-binary-tree-maximum-path-sum.swift)
| [✔️](typescript%2F0124-binary-tree-maximum-path-sum.ts)
-[0297 - Serialize And Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/) | [✔️](c%2F0297-serialize-and-deserialize-binary-tree.c)
| [✔️](cpp%2F0297-serialize-and-deserialize-binary-tree.cpp)
| [✔️](csharp%2F0297-serialize-and-deserialize-binary-tree.cs)
| ❌
| [✔️](go%2F0297-serialize-and-deserialize-binary-tree.go)
| [✔️](java%2F0297-serialize-and-deserialize-binary-tree.java)
| [✔️](javascript%2F0297-serialize-and-deserialize-binary-tree.js)
| [✔️](kotlin%2F0297-serialize-and-deserialize-binary-tree.kt)
| [✔️](python%2F0297-serialize-and-deserialize-binary-tree.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0094 - Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/) | ❌
| [✔️](c%2F0094-binary-tree-inorder-traversal.c)
| [✔️](cpp%2F0094-binary-tree-inorder-traversal.cpp)
| [✔️](csharp%2F0094-binary-tree-inorder-traversal.cs)
| ❌
| [✔️](go%2F0094-binary-tree-inorder-traversal.go)
| ❌
| [✔️](java%2F0094-binary-tree-inorder-traversal.java)
| [✔️](javascript%2F0094-binary-tree-inorder-traversal.js)
| [✔️](kotlin%2F0094-binary-tree-inorder-traversal.kt)
| [✔️](python%2F0094-binary-tree-inorder-traversal.py)
| [✔️](ruby%2F0094-binary-tree-inorder-traversal.rb)
| [✔️](rust%2F0094-binary-tree-inorder-traversal.rs)
| ❌
| [✔️](swift%2F0094-binary-tree-inorder-traversal.swift)
| [✔️](typescript%2F0094-binary-tree-inorder-traversal.ts)
+[0144 - Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal/) | ❌
| ❌
| [✔️](cpp%2F0144-binary-tree-preorder-traversal.cpp)
| [✔️](csharp%2F0144-binary-tree-preorder-traversal.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0144-binary-tree-preorder-traversal.java)
| [✔️](javascript%2F0144-binary-tree-preorder-traversal.js)
| [✔️](kotlin%2F0144-binary-tree-preorder-traversal.kt)
| [✔️](python%2F0144-binary-tree-preorder-traversal.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0144-binary-tree-preorder-traversal.swift)
| [✔️](typescript%2F0144-binary-tree-preorder-traversal.ts)
+[0145 - Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal/) | ❌
| ❌
| [✔️](cpp%2F0145-binary-tree-postorder-traversal.cpp)
| [✔️](csharp%2F0145-binary-tree-postorder-traversal.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0145-binary-tree-postorder-traversal.java)
| [✔️](javascript%2F0145-binary-tree-postorder-traversal.js)
| [✔️](kotlin%2F0145-binary-tree-postorder-traversal.kt)
| [✔️](python%2F0145-binary-tree-postorder-traversal.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0145-binary-tree-postorder-traversal.swift)
| [✔️](typescript%2F0145-binary-tree-postorder-traversal.ts)
+[0226 - Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/) | ❌
| [✔️](c%2F0226-invert-binary-tree.c)
| [✔️](cpp%2F0226-invert-binary-tree.cpp)
| [✔️](csharp%2F0226-invert-binary-tree.cs)
| [✔️](dart%2F0226-invert-binary-tree.dart)
| [✔️](go%2F0226-invert-binary-tree.go)
| ❌
| [✔️](java%2F0226-invert-binary-tree.java)
| [✔️](javascript%2F0226-invert-binary-tree.js)
| [✔️](kotlin%2F0226-invert-binary-tree.kt)
| [✔️](python%2F0226-invert-binary-tree.py)
| [✔️](ruby%2F0226-invert-binary-tree.rb)
| [✔️](rust%2F0226-invert-binary-tree.rs)
| ❌
| [✔️](swift%2F0226-invert-binary-tree.swift)
| [✔️](typescript%2F0226-invert-binary-tree.ts)
+[0104 - Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/) | ❌
| [✔️](c%2F0104-maximum-depth-of-binary-tree.c)
| [✔️](cpp%2F0104-maximum-depth-of-binary-tree.cpp)
| [✔️](csharp%2F0104-maximum-depth-of-binary-tree.cs)
| ❌
| [✔️](go%2F0104-maximum-depth-of-binary-tree.go)
| ❌
| [✔️](java%2F0104-maximum-depth-of-binary-tree.java)
| [✔️](javascript%2F0104-maximum-depth-of-binary-tree.js)
| [✔️](kotlin%2F0104-maximum-depth-of-binary-tree.kt)
| [✔️](python%2F0104-maximum-depth-of-binary-tree.py)
| [✔️](ruby%2F0104-maximum-depth-of-binary-tree.rb)
| [✔️](rust%2F0104-maximum-depth-of-binary-tree.rs)
| ❌
| [✔️](swift%2F0104-maximum-depth-of-binary-tree.swift)
| [✔️](typescript%2F0104-maximum-depth-of-binary-tree.ts)
+[0543 - Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/) | ❌
| [✔️](c%2F0543-diameter-of-binary-tree.c)
| [✔️](cpp%2F0543-diameter-of-binary-tree.cpp)
| [✔️](csharp%2F0543-diameter-of-binary-tree.cs)
| ❌
| [✔️](go%2F0543-diameter-of-binary-tree.go)
| ❌
| [✔️](java%2F0543-diameter-of-binary-tree.java)
| [✔️](javascript%2F0543-diameter-of-binary-tree.js)
| [✔️](kotlin%2F0543-diameter-of-binary-tree.kt)
| [✔️](python%2F0543-diameter-of-binary-tree.py)
| [✔️](ruby%2F0543-diameter-of-binary-tree.rb)
| [✔️](rust%2F0543-diameter-of-binary-tree.rs)
| ❌
| [✔️](swift%2F0543-diameter-of-binary-tree.swift)
| [✔️](typescript%2F0543-diameter-of-binary-tree.ts)
+[0110 - Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/) | ❌
| [✔️](c%2F0110-balanced-binary-tree.c)
| [✔️](cpp%2F0110-balanced-binary-tree.cpp)
| [✔️](csharp%2F0110-balanced-binary-tree.cs)
| ❌
| [✔️](go%2F0110-balanced-binary-tree.go)
| ❌
| [✔️](java%2F0110-balanced-binary-tree.java)
| [✔️](javascript%2F0110-balanced-binary-tree.js)
| [✔️](kotlin%2F0110-balanced-binary-tree.kt)
| [✔️](python%2F0110-balanced-binary-tree.py)
| [✔️](ruby%2F0110-balanced-binary-tree.rb)
| [✔️](rust%2F0110-balanced-binary-tree.rs)
| ❌
| [✔️](swift%2F0110-balanced-binary-tree.swift)
| [✔️](typescript%2F0110-balanced-binary-tree.ts)
+[0100 - Same Tree](https://leetcode.com/problems/same-tree/) | ❌
| [✔️](c%2F0100-same-tree.c)
| [✔️](cpp%2F0100-same-tree.cpp)
| [✔️](csharp%2F0100-same-tree.cs)
| ❌
| [✔️](go%2F0100-same-tree.go)
| ❌
| [✔️](java%2F0100-same-tree.java)
| [✔️](javascript%2F0100-same-tree.js)
| [✔️](kotlin%2F0100-same-tree.kt)
| [✔️](python%2F0100-same-tree.py)
| [✔️](ruby%2F0100-same-tree.rb)
| [✔️](rust%2F0100-same-tree.rs)
| ❌
| [✔️](swift%2F0100-same-tree.swift)
| [✔️](typescript%2F0100-same-tree.ts)
+[0572 - Subtree of Another Tree](https://leetcode.com/problems/subtree-of-another-tree/) | ❌
| [✔️](c%2F0572-subtree-of-another-tree.c)
| [✔️](cpp%2F0572-subtree-of-another-tree.cpp)
| [✔️](csharp%2F0572-subtree-of-another-tree.cs)
| ❌
| [✔️](go%2F0572-subtree-of-another-tree.go)
| ❌
| [✔️](java%2F0572-subtree-of-another-tree.java)
| [✔️](javascript%2F0572-subtree-of-another-tree.js)
| [✔️](kotlin%2F0572-subtree-of-another-tree.kt)
| [✔️](python%2F0572-subtree-of-another-tree.py)
| [✔️](ruby%2F0572-subtree-of-another-tree.rb)
| [✔️](rust%2F0572-subtree-of-another-tree.rs)
| [✔️](scala%2F0572-subtree-of-another-tree.scala)
| [✔️](swift%2F0572-subtree-of-another-tree.swift)
| [✔️](typescript%2F0572-subtree-of-another-tree.ts)
+[0108 - Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/) | ❌
| [✔️](c%2F0108-convert-sorted-array-to-binary-search-tree.c)
| ❌
| ❌
| ❌
| [✔️](go%2F0108-convert-sorted-array-to-binary-search-tree.go)
| ❌
| [✔️](java%2F0108-convert-sorted-array-to-binary-search-tree.java)
| [✔️](javascript%2F0108-convert-sorted-array-to-binary-search-tree.js)
| [✔️](kotlin%2F0108-convert-sorted-array-to-binary-search-tree.kt)
| [✔️](python%2F0108-convert-sorted-array-to-binary-search-tree.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0617 - Merge Two Binary Trees](https://leetcode.com/problems/merge-two-binary-trees/) | ❌
| [✔️](c%2F0617-merge-two-binary-trees.c)
| [✔️](cpp%2F0617-merge-two-binary-trees.cpp)
| [✔️](csharp%2F0617-merge-two-binary-trees.cs)
| [✔️](dart%2F0617-merge-two-binary-trees.dart)
| [✔️](go%2F0617-merge-two-binary-trees.go)
| ❌
| [✔️](java%2F0617-merge-two-binary-trees.java)
| [✔️](javascript%2F0617-merge-two-binary-trees.js)
| [✔️](kotlin%2F0617-merge-two-binary-trees.kt)
| [✔️](python%2F0617-merge-two-binary-trees.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0112 - Path Sum](https://leetcode.com/problems/path-sum/) | ❌
| [✔️](c%2F0112-path-sum.c)
| [✔️](cpp%2F0112-path-sum.cpp)
| [✔️](csharp%2F0112-path-sum.cs)
| ❌
| [✔️](go%2F0112-path-sum.go)
| ❌
| [✔️](java%2F0112-path-sum.java)
| [✔️](javascript%2F0112-path-sum.js)
| [✔️](kotlin%2F0112-path-sum.kt)
| [✔️](python%2F0112-path-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0112-path-sum.swift)
| ❌
+[0606 - Construct String From Binary Tree](https://leetcode.com/problems/construct-string-from-binary-tree/) | ❌
| ❌
| [✔️](cpp%2F0606-construct-string-from-binary-tree.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0606-construct-string-from-binary-tree.java)
| [✔️](javascript%2F0606-construct-string-from-binary-tree.js)
| [✔️](kotlin%2F0606-construct-string-from-binary-tree.kt)
| [✔️](python%2F0606-construct-string-from-binary-tree.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0235 - Lowest Common Ancestor of a Binary Search Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) | ❌
| [✔️](c%2F0235-lowest-common-ancestor-of-a-binary-search-tree.c)
| [✔️](cpp%2F0235-lowest-common-ancestor-of-a-binary-search-tree.cpp)
| [✔️](csharp%2F0235-lowest-common-ancestor-of-a-binary-search-tree.cs)
| ❌
| [✔️](go%2F0235-lowest-common-ancestor-of-a-binary-search-tree.go)
| ❌
| [✔️](java%2F0235-lowest-common-ancestor-of-a-binary-search-tree.java)
| [✔️](javascript%2F0235-lowest-common-ancestor-of-a-binary-search-tree.js)
| [✔️](kotlin%2F0235-lowest-common-ancestor-of-a-binary-search-tree.kt)
| [✔️](python%2F0235-lowest-common-ancestor-of-a-binary-search-tree.py)
| [✔️](ruby%2F0235-lowest-common-ancestor-of-a-binary-search-tree.rb)
| [✔️](rust%2F0235-lowest-common-ancestor-of-a-binary-search-tree.rs)
| [✔️](scala%2F0235-lowest-common-ancestor-of-a-binary-search-tree.scala)
| [✔️](swift%2F0235-lowest-common-ancestor-of-a-binary-search-tree.swift)
| [✔️](typescript%2F0235-lowest-common-ancestor-of-a-binary-search-tree.ts)
+[0701 - Insert into a Binary Search Tree](https://leetcode.com/problems/insert-into-a-binary-search-tree/) | ❌
| ❌
| [✔️](cpp%2F0701-insert-into-a-binary-search-tree.cpp)
| [✔️](csharp%2F0701-insert-into-a-binary-search-tree.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0701-insert-into-a-binary-search-tree.java)
| [✔️](javascript%2F0701-insert-into-a-binary-search-tree.js)
| [✔️](kotlin%2F0701-insert-into-a-binary-search-tree.kt)
| [✔️](python%2F0701-insert-into-a-binary-search-tree.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0701-insert-into-a-binary-search-tree.swift)
| [✔️](typescript%2F0701-insert-into-a-binary-search-tree.ts)
+[0450 - Delete Node in a BST](https://leetcode.com/problems/delete-node-in-a-bst/) | ❌
| ❌
| [✔️](cpp%2F0450-delete-node-in-a-bst.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0450-delete-node-in-a-bst.java)
| [✔️](javascript%2F0450-delete-node-in-a-bst.js)
| [✔️](kotlin%2F0450-delete-node-in-a-bst.kt)
| [✔️](python%2F0450-delete-node-in-a-bst.py)
| ❌
| [✔️](rust%2F0450-delete-node-in-a-bst.rs)
| ❌
| [✔️](swift%2F0450-delete-node-in-a-bst.swift)
| [✔️](typescript%2F0450-delete-node-in-a-bst.ts)
+[0102 - Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) | ❌
| [✔️](c%2F0102-binary-tree-level-order-traversal.c)
| [✔️](cpp%2F0102-binary-tree-level-order-traversal.cpp)
| [✔️](csharp%2F0102-binary-tree-level-order-traversal.cs)
| ❌
| [✔️](go%2F0102-binary-tree-level-order-traversal.go)
| ❌
| [✔️](java%2F0102-binary-tree-level-order-traversal.java)
| [✔️](javascript%2F0102-binary-tree-level-order-traversal.js)
| [✔️](kotlin%2F0102-binary-tree-level-order-traversal.kt)
| [✔️](python%2F0102-binary-tree-level-order-traversal.py)
| [✔️](ruby%2F0102-binary-tree-level-order-traversal.rb)
| [✔️](rust%2F0102-binary-tree-level-order-traversal.rs)
| ❌
| [✔️](swift%2F0102-binary-tree-level-order-traversal.swift)
| [✔️](typescript%2F0102-binary-tree-level-order-traversal.ts)
+[0199 - Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/) | ❌
| [✔️](c%2F0199-binary-tree-right-side-view.c)
| [✔️](cpp%2F0199-binary-tree-right-side-view.cpp)
| [✔️](csharp%2F0199-binary-tree-right-side-view.cs)
| ❌
| [✔️](go%2F0199-binary-tree-right-side-view.go)
| ❌
| [✔️](java%2F0199-binary-tree-right-side-view.java)
| [✔️](javascript%2F0199-binary-tree-right-side-view.js)
| [✔️](kotlin%2F0199-binary-tree-right-side-view.kt)
| [✔️](python%2F0199-binary-tree-right-side-view.py)
| ❌
| [✔️](rust%2F0199-binary-tree-right-side-view.rs)
| ❌
| [✔️](swift%2F0199-binary-tree-right-side-view.swift)
| [✔️](typescript%2F0199-binary-tree-right-side-view.ts)
+[0783 - Minimum Distance between BST Nodes](https://leetcode.com/problems/minimum-distance-between-bst-nodes/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0783-minimum-distance-between-bst-nodes.java)
| [✔️](javascript%2F0783-minimum-distance-between-bst-nodes.js)
| [✔️](kotlin%2F0783-minimum-distance-between-bst-nodes.kt)
| [✔️](python%2F0783-minimum-distance-between-bst-nodes.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0101 - Symmetric Tree ](https://leetcode.com/problems/symmetric-tree/) | ❌
| ❌
| [✔️](cpp%2F0101-symmetric-tree.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0101-symmetric-tree.java)
| [✔️](javascript%2F0101-symmetric-tree.js)
| [✔️](kotlin%2F0101-symmetric-tree.kt)
| [✔️](python%2F0101-symmetric-tree.py)
| ❌
| [✔️](rust%2F0101-symmetric-tree.rs)
| ❌
| ❌
| ❌
+[1443 - Minimum Time to Collect All Apples in a Tree](https://leetcode.com/problems/minimum-time-to-collect-all-apples-in-a-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1443-minimum-time-to-collect-all-apples-in-a-tree.js)
| [✔️](kotlin%2F1443-minimum-time-to-collect-all-apples-in-a-tree.kt)
| ❌
| ❌
| [✔️](rust%2F1443-minimum-time-to-collect-all-apples-in-a-tree.rs)
| ❌
| ❌
| ❌
+[0103 - Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/) | ❌
| ❌
| [✔️](cpp%2F0103-binary-tree-zigzag-level-order-traversal.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0103-binary-tree-zigzag-level-order-traversal.java)
| [✔️](javascript%2F0103-binary-tree-zigzag-level-order-traversal.js)
| [✔️](kotlin%2F0103-binary-tree-zigzag-level-order-traversal.kt)
| [✔️](python%2F0103-binary-tree-zigzag-level-order-traversal.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0427 - Construct Quad Tree](https://leetcode.com/problems/construct-quad-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0427-construct-quad-tree.java)
| ❌
| [✔️](kotlin%2F0427-construct-quad-tree.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0652 - Find Duplicate Subtrees](https://leetcode.com/problems/find-duplicate-subtrees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0652-find-duplicate-subtrees.js)
| [✔️](kotlin%2F0652-find-duplicate-subtrees.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0958 - Check Completeness of a Binary Tree](https://leetcode.com/problems/check-completeness-of-a-binary-tree/) | ❌
| ❌
| [✔️](cpp%2F0958-check-completeness-of-a-binary-tree.cpp)
| [✔️](csharp%2F0958-check-completeness-of-a-binary-tree.cs)
| ❌
| [✔️](go%2F0958-check-completeness-of-a-binary-tree.go)
| ❌
| ❌
| [✔️](javascript%2F0958-check-completeness-of-a-binary-tree.js)
| [✔️](kotlin%2F0958-check-completeness-of-a-binary-tree.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0106 - Construct Binary Tree from Inorder and Postorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0106-construct-binary-tree-from-inorder-and-postorder-traversal.java)
| [✔️](javascript%2F0106-construct-binary-tree-from-inorder-and-postorder-traversal.js)
| [✔️](kotlin%2F0106-construct-binary-tree-from-inorder-and-postorder-traversal.kt)
| [✔️](python%2F0106-construct-binary-tree-from-inorder-and-postorder-traversal.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0662 - Maximum Width of Binary Tree ](https://leetcode.com/problems/maximum-width-of-binary-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0662-maximum-width-of-binary-tree.java)
| ❌
| [✔️](kotlin%2F0662-maximum-width-of-binary-tree.kt)
| [✔️](python%2F0662-maximum-width-of-binary-tree.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1376 - Time Needed to Inform All Employees ](https://leetcode.com/problems/time-needed-to-inform-all-employees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1376-time-needed-to-inform-all-employees.java)
| [✔️](javascript%2F1376-time-needed-to-inform-all-employees.js)
| [✔️](kotlin%2F1376-time-needed-to-inform-all-employees.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1448 - Count Good Nodes In Binary Tree](https://leetcode.com/problems/count-good-nodes-in-binary-tree/) | ❌
| [✔️](c%2F1448-Count-Good-Nodes-in-Binary-Tree.c)
| [✔️](cpp%2F1448-Count-Good-Nodes-In-Binary-Tree.cpp)
| [✔️](csharp%2F1448-Count-Good-Nodes-in-Binary-Tree.cs)
| ❌
| [✔️](go%2F1448-count-good-nodes-in-binary-tree.go)
| ❌
| [✔️](java%2F1448-Count-Good-Nodes-in-Binary-Tree.java)
| [✔️](javascript%2F1448-Count-Good-Nodes-in-Binary-Tree.js)
| [✔️](kotlin%2F1448-Count-Good-Nodes-In-Binary-Tree.kt)
| [✔️](python%2F1448-count-good-nodes-in-binary-tree.py)
| ❌
| [✔️](rust%2F1448-count-good-nodes-in-binary-tree.rs)
| ❌
| [✔️](swift%2F1448-count-good-nodes-in-binary-tree.swift)
| [✔️](typescript%2F1448-Count-Good-Nodes-in-Binary-Tree.ts)
+[0098 - Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/) | ❌
| [✔️](c%2F0098-validate-binary-search-tree.c)
| [✔️](cpp%2F0098-validate-binary-search-tree.cpp)
| [✔️](csharp%2F0098-validate-binary-search-tree.cs)
| ❌
| [✔️](go%2F0098-validate-binary-search-tree.go)
| ❌
| [✔️](java%2F0098-validate-binary-search-tree.java)
| [✔️](javascript%2F0098-validate-binary-search-tree.js)
| [✔️](kotlin%2F0098-validate-binary-search-tree.kt)
| [✔️](python%2F0098-validate-binary-search-tree.py)
| ❌
| [✔️](rust%2F0098-validate-binary-search-tree.rs)
| ❌
| [✔️](swift%2F0098-validate-binary-search-tree.swift)
| [✔️](typescript%2F0098-validate-binary-search-tree.ts)
+[0230 - Kth Smallest Element In a Bst](https://leetcode.com/problems/kth-smallest-element-in-a-bst/) | ❌
| [✔️](c%2F0230-kth-smallest-element-in-a-bst.c)
| [✔️](cpp%2F0230-kth-smallest-element-in-a-bst.cpp)
| [✔️](csharp%2F0230-kth-smallest-element-in-a-bst.cs)
| ❌
| [✔️](go%2F0230-kth-smallest-element-in-a-bst.go)
| ❌
| [✔️](java%2F0230-kth-smallest-element-in-a-bst.java)
| [✔️](javascript%2F0230-kth-smallest-element-in-a-bst.js)
| [✔️](kotlin%2F0230-kth-smallest-element-in-a-bst.kt)
| [✔️](python%2F0230-kth-smallest-element-in-a-bst.py)
| ❌
| [✔️](rust%2F0230-kth-smallest-element-in-a-bst.rs)
| [✔️](scala%2F0230-kth-smallest-element-in-a-bst.scala)
| [✔️](swift%2F0230-kth-smallest-element-in-a-bst.swift)
| [✔️](typescript%2F0230-kth-smallest-element-in-a-bst.ts)
+[0105 - Construct Binary Tree From Preorder And Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) | ❌
| [✔️](c%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.c)
| [✔️](cpp%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.cpp)
| [✔️](csharp%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.cs)
| ❌
| [✔️](go%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.go)
| ❌
| [✔️](java%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.java)
| [✔️](javascript%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.js)
| [✔️](kotlin%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.kt)
| [✔️](python%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.swift)
| [✔️](typescript%2F0105-construct-binary-tree-from-preorder-and-inorder-traversal.ts)
+[0096 - Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/) | ❌
| [✔️](c%2F0096-unique-binary-search-trees.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0096-unique-binary-search-trees.java)
| [✔️](javascript%2F0096-unique-binary-search-trees.js)
| [✔️](kotlin%2F0096-unique-binary-search-trees.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0095 - Unique Binary Search Trees II](https://leetcode.com/problems/unique-binary-search-trees-ii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0095-unique-binary-search-trees-ii.java)
| [✔️](javascript%2F0095-unique-binary-search-trees-ii.js)
| [✔️](kotlin%2F0095-unique-binary-search-trees-ii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0129 - Sum Root to Leaf Numbers](https://leetcode.com/problems/sum-root-to-leaf-numbers/) | ❌
| [✔️](c%2F0129-sum-root-to-leaf-numbers.c)
| [✔️](cpp%2F0129-sum-root-to-leaf-numbers.cpp)
| ❌
| ❌
| [✔️](go%2F0129-sum-root-to-leaf-numbers.go)
| ❌
| [✔️](java%2F0129-sum-root-to-leaf-numbers.java)
| [✔️](javascript%2F0129-sum-root-to-leaf-numbers.js)
| [✔️](kotlin%2F0129-sum-root-to-leaf-numbers.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0337 - House Robber III](https://leetcode.com/problems/house-robber-iii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0337-house-robber-iii.java)
| [✔️](javascript%2F0337-house-robber-iii.js)
| [✔️](kotlin%2F0337-house-robber-iii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0951 - Flip Equivalent Binary Trees](https://leetcode.com/problems/flip-equivalent-binary-trees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0951-flip-equivalent-binary-trees.java)
| [✔️](javascript%2F0951-flip-equivalent-binary-trees.js)
| [✔️](kotlin%2F0951-flip-equivalent-binary-trees.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1993 - Operations On Tree](https://leetcode.com/problems/operations-on-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1993-operations-on-tree.java)
| [✔️](javascript%2F1993-operations-on-tree.js)
| [✔️](kotlin%2F1993-operations-on-tree.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0894 - All Possible Full Binary Trees](https://leetcode.com/problems/all-possible-full-binary-trees/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0894-all-possible-full-binary-trees.java)
| [✔️](javascript%2F0894-all-possible-full-binary-trees.js)
| [✔️](kotlin%2F0894-all-possible-full-binary-trees.kt)
| [✔️](python%2F0894-all-possible-full-binary-trees.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0513 - Find Bottom Left Tree Value](https://leetcode.com/problems/find-bottom-left-tree-value/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0513-find-bottom-left-tree-value.java)
| [✔️](javascript%2F0513-find-bottom-left-tree-value.js)
| [✔️](kotlin%2F0513-find-bottom-left-tree-value.kt)
| [✔️](python%2F0513-find-bottom-left-tree-value.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0669 - Trim a Binary Search Tree](https://leetcode.com/problems/trim-a-binary-search-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0669-trim-a-binary-search-tree.go)
| ❌
| [✔️](java%2F0669-trim-a-binary-search-tree.java)
| [✔️](javascript%2F0669-trim-a-binary-search-tree.js)
| [✔️](kotlin%2F0669-trim-a-binary-search-tree.kt)
| [✔️](python%2F0669-trim-a-binary-search-tree.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0669-trim-a-binary-search-tree.ts)
+[0173 - Binary Search Tree Iterator](https://leetcode.com/problems/binary-search-tree-iterator/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0173-binary-search-tree-iterator.java)
| [✔️](javascript%2F0173-binary-search-tree-iterator.js)
| [✔️](kotlin%2F0173-binary-search-tree-iterator.kt)
| ❌
| ❌
| ❌
| ❌
| [✔️](swift%2F0173-binary-search-tree-iterator.swift)
| ❌
+[0538 - Convert Bst to Greater Tree](https://leetcode.com/problems/convert-bst-to-greater-tree/) | ❌
| ❌
| [✔️](cpp%2F0538-convert-bst-to-greater-tree.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0538-convert-bst-to-greater-tree.java)
| [✔️](javascript%2F0538-convert-bst-to-greater-tree.js)
| [✔️](kotlin%2F0538-convert-bst-to-greater-tree.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0124 - Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/) | ❌
| [✔️](c%2F0124-binary-tree-maximum-path-sum.c)
| [✔️](cpp%2F0124-binary-tree-maximum-path-sum.cpp)
| [✔️](csharp%2F0124-binary-tree-maximum-path-sum.cs)
| ❌
| [✔️](go%2F0124-binary-tree-maximum-path-sum.go)
| ❌
| [✔️](java%2F0124-binary-tree-maximum-path-sum.java)
| [✔️](javascript%2F0124-binary-tree-maximum-path-sum.js)
| [✔️](kotlin%2F0124-binary-tree-maximum-path-sum.kt)
| [✔️](python%2F0124-binary-tree-maximum-path-sum.py)
| ❌
| [✔️](rust%2F0124-binary-tree-maximum-path-sum.rs)
| ❌
| [✔️](swift%2F0124-binary-tree-maximum-path-sum.swift)
| [✔️](typescript%2F0124-binary-tree-maximum-path-sum.ts)
+[0297 - Serialize And Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/) | ❌
| [✔️](c%2F0297-serialize-and-deserialize-binary-tree.c)
| [✔️](cpp%2F0297-serialize-and-deserialize-binary-tree.cpp)
| [✔️](csharp%2F0297-serialize-and-deserialize-binary-tree.cs)
| ❌
| [✔️](go%2F0297-serialize-and-deserialize-binary-tree.go)
| ❌
| [✔️](java%2F0297-serialize-and-deserialize-binary-tree.java)
| [✔️](javascript%2F0297-serialize-and-deserialize-binary-tree.js)
| [✔️](kotlin%2F0297-serialize-and-deserialize-binary-tree.kt)
| [✔️](python%2F0297-serialize-and-deserialize-binary-tree.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0297-serialize-and-deserialize-binary-tree.swift)
| [✔️](typescript%2F0297-serialize-and-deserialize-binary-tree.ts)
### Tries
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0208 - Implement Trie Prefix Tree](https://leetcode.com/problems/implement-trie-prefix-tree/) | [✔️](c%2F0208-implement-trie-prefix-tree.c)
| [✔️](cpp%2F0208-implement-trie-prefix-tree.cpp)
| [✔️](csharp%2F0208-implement-trie-prefix-tree.cs)
| ❌
| [✔️](go%2F0208-implement-trie-prefix-tree.go)
| [✔️](java%2F0208-implement-trie-prefix-tree.java)
| [✔️](javascript%2F0208-implement-trie-prefix-tree.js)
| [✔️](kotlin%2F0208-implement-trie-prefix-tree.kt)
| [✔️](python%2F0208-implement-trie-prefix-tree.py)
| [✔️](ruby%2F0208-implement-trie-prefix-tree.rb)
| [✔️](rust%2F0208-implement-trie-prefix-tree.rs)
| [✔️](scala%2F0208-implement-trie-prefix-tree.scala)
| [✔️](swift%2F0208-implement-trie-prefix-tree.swift)
| [✔️](typescript%2F0208-implement-trie-prefix-tree.ts)
-[0211 - Design Add And Search Words Data Structure](https://leetcode.com/problems/design-add-and-search-words-data-structure/) | [✔️](c%2F0211-design-add-and-search-words-data-structure.c)
| [✔️](cpp%2F0211-design-add-and-search-words-data-structure.cpp)
| [✔️](csharp%2F0211-design-add-and-search-words-data-structure.cs)
| ❌
| [✔️](go%2F0211-design-add-and-search-words-data-structure.go)
| [✔️](java%2F0211-design-add-and-search-words-data-structure.java)
| [✔️](javascript%2F0211-design-add-and-search-words-data-structure.js)
| [✔️](kotlin%2F0211-design-add-and-search-words-data-structure.kt)
| [✔️](python%2F0211-design-add-and-search-words-data-structure.py)
| [✔️](ruby%2F0211-design-add-and-search-words-data-structure.rb)
| [✔️](rust%2F0211-design-add-and-search-words-data-structure.rs)
| [✔️](scala%2F0211-design-add-and-search-words-data-structure.scala)
| ❌
| [✔️](typescript%2F0211-design-add-and-search-words-data-structure.ts)
-[0212 - Word Search II](https://leetcode.com/problems/word-search-ii/) | ❌
| [✔️](cpp%2F0212-word-search-ii.cpp)
| [✔️](csharp%2F0212-word-search-ii.cs)
| ❌
| [✔️](go%2F0212-word-search-ii.go)
| [✔️](java%2F0212-word-search-ii.java)
| [✔️](javascript%2F0212-word-search-ii.js)
| [✔️](kotlin%2F0212-word-search-ii.kt)
| [✔️](python%2F0212-word-search-ii.py)
| ❌
| [✔️](rust%2F0212-word-search-ii.rs)
| ❌
| [✔️](swift%2F0212-word-search-ii.swift)
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0208 - Implement Trie Prefix Tree](https://leetcode.com/problems/implement-trie-prefix-tree/) | ❌
| [✔️](c%2F0208-implement-trie-prefix-tree.c)
| [✔️](cpp%2F0208-implement-trie-prefix-tree.cpp)
| [✔️](csharp%2F0208-implement-trie-prefix-tree.cs)
| ❌
| [✔️](go%2F0208-implement-trie-prefix-tree.go)
| ❌
| [✔️](java%2F0208-implement-trie-prefix-tree.java)
| [✔️](javascript%2F0208-implement-trie-prefix-tree.js)
| [✔️](kotlin%2F0208-implement-trie-prefix-tree.kt)
| [✔️](python%2F0208-implement-trie-prefix-tree.py)
| [✔️](ruby%2F0208-implement-trie-prefix-tree.rb)
| [✔️](rust%2F0208-implement-trie-prefix-tree.rs)
| [✔️](scala%2F0208-implement-trie-prefix-tree.scala)
| [✔️](swift%2F0208-implement-trie-prefix-tree.swift)
| [✔️](typescript%2F0208-implement-trie-prefix-tree.ts)
+[0211 - Design Add And Search Words Data Structure](https://leetcode.com/problems/design-add-and-search-words-data-structure/) | ❌
| [✔️](c%2F0211-design-add-and-search-words-data-structure.c)
| [✔️](cpp%2F0211-design-add-and-search-words-data-structure.cpp)
| [✔️](csharp%2F0211-design-add-and-search-words-data-structure.cs)
| ❌
| [✔️](go%2F0211-design-add-and-search-words-data-structure.go)
| ❌
| [✔️](java%2F0211-design-add-and-search-words-data-structure.java)
| [✔️](javascript%2F0211-design-add-and-search-words-data-structure.js)
| [✔️](kotlin%2F0211-design-add-and-search-words-data-structure.kt)
| [✔️](python%2F0211-design-add-and-search-words-data-structure.py)
| [✔️](ruby%2F0211-design-add-and-search-words-data-structure.rb)
| [✔️](rust%2F0211-design-add-and-search-words-data-structure.rs)
| [✔️](scala%2F0211-design-add-and-search-words-data-structure.scala)
| [✔️](swift%2F0211-design-add-and-search-words-data-structure.swift)
| [✔️](typescript%2F0211-design-add-and-search-words-data-structure.ts)
+[2707 - Extra Characters in a String](https://leetcode.com/problems/extra-characters-in-a-string/) | ❌
| ❌
| [✔️](cpp%2F2707-extra-characters-in-a-string.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2707-extra-characters-in-a-string.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0212 - Word Search II](https://leetcode.com/problems/word-search-ii/) | ❌
| [✔️](c%2F0212-word-search-ii.c)
| [✔️](cpp%2F0212-word-search-ii.cpp)
| [✔️](csharp%2F0212-word-search-ii.cs)
| ❌
| [✔️](go%2F0212-word-search-ii.go)
| ❌
| [✔️](java%2F0212-word-search-ii.java)
| [✔️](javascript%2F0212-word-search-ii.js)
| [✔️](kotlin%2F0212-word-search-ii.kt)
| [✔️](python%2F0212-word-search-ii.py)
| ❌
| [✔️](rust%2F0212-word-search-ii.rs)
| ❌
| [✔️](swift%2F0212-word-search-ii.swift)
| [✔️](typescript%2F0212-word-search-ii.ts)
### Heap / Priority Queue
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0703 - Kth Largest Element In a Stream](https://leetcode.com/problems/kth-largest-element-in-a-stream/) | [✔️](c%2F0703-kth-largest-element-in-a-stream.c)
| [✔️](cpp%2F0703-kth-largest-element-in-a-stream.cpp)
| [✔️](csharp%2F0703-kth-largest-element-in-a-stream.cs)
| ❌
| [✔️](go%2F0703-kth-largest-element-in-a-stream.go)
| [✔️](java%2F0703-kth-largest-element-in-a-stream.java)
| [✔️](javascript%2F0703-kth-largest-element-in-a-stream.js)
| [✔️](kotlin%2F0703-kth-largest-element-in-a-stream.kt)
| [✔️](python%2F0703-kth-largest-element-in-a-stream.py)
| [✔️](ruby%2F0703-kth-largest-element-in-a-stream.rb)
| [✔️](rust%2F0703-kth-largest-element-in-a-stream.rs)
| ❌
| [✔️](swift%2F0703-kth-largest-element-in-a-stream.swift)
| ❌
-[1046 - Last Stone Weight](https://leetcode.com/problems/last-stone-weight/) | ❌
| [✔️](cpp%2F1046-Last-Stone-Weight.cpp)
| [✔️](csharp%2F1046-Last-Stone-Weight.cs)
| ❌
| [✔️](go%2F1046-last-stone-weight.go)
| [✔️](java%2F1046-Last-Stone-Weight.java)
| [✔️](javascript%2F1046-Last-Stone-Weight.js)
| [✔️](kotlin%2F1046-Last-Stone-Weight.kt)
| [✔️](python%2F1046-last-stone-weight.py)
| [✔️](ruby%2F1046-Last-Stone-Weight.rb)
| [✔️](rust%2F1046-last-stone-weight.rs)
| ❌
| ❌
| [✔️](typescript%2F1046-Last-Stone-Weight.ts)
-[0973 - K Closest Points to Origin](https://leetcode.com/problems/k-closest-points-to-origin/) | ❌
| [✔️](cpp%2F0973-k-closest-points-to-origin.cpp)
| [✔️](csharp%2F0973-k-closest-points-to-origin.cs)
| ❌
| [✔️](go%2F0973-k-closest-points-to-origin.go)
| [✔️](java%2F0973-k-closest-points-to-origin.java)
| [✔️](javascript%2F0973-k-closest-points-to-origin.js)
| [✔️](kotlin%2F0973-k-closest-points-to-origin.kt)
| [✔️](python%2F0973-k-closest-points-to-origin.py)
| ❌
| [✔️](rust%2F0973-k-closest-points-to-origin.rs)
| ❌
| ❌
| ❌
-[0215 - Kth Largest Element In An Array](https://leetcode.com/problems/kth-largest-element-in-an-array/) | ❌
| [✔️](cpp%2F0215-kth-largest-element-in-an-array.cpp)
| [✔️](csharp%2F0215-kth-largest-element-in-an-array.cs)
| ❌
| [✔️](go%2F0215-kth-largest-element-in-an-array.go)
| [✔️](java%2F0215-kth-largest-element-in-an-array.java)
| [✔️](javascript%2F0215-kth-largest-element-in-an-array.js)
| [✔️](kotlin%2F0215-kth-largest-element-in-an-array.kt)
| [✔️](python%2F0215-kth-largest-element-in-an-array.py)
| ❌
| ❌
| [✔️](scala%2F0215-kth-largest-element-in-an-array.scala)
| ❌
| [✔️](typescript%2F0215-kth-largest-element-in-an-array.ts)
-[0621 - Task Scheduler](https://leetcode.com/problems/task-scheduler/) | ❌
| [✔️](cpp%2F0621-task-scheduler.cpp)
| [✔️](csharp%2F0621-task-scheduler.cs)
| ❌
| ❌
| [✔️](java%2F0621-task-scheduler.java)
| [✔️](javascript%2F0621-task-scheduler.js)
| [✔️](kotlin%2F0621-task-scheduler.kt)
| [✔️](python%2F0621-task-scheduler.py)
| ❌
| [✔️](rust%2F0621-task-scheduler.rs)
| ❌
| ❌
| [✔️](typescript%2F0621-task-scheduler.ts)
-[0355 - Design Twitter](https://leetcode.com/problems/design-twitter/) | ❌
| [✔️](cpp%2F0355-design-twitter.cpp)
| [✔️](csharp%2F0355-design-twitter.cs)
| ❌
| [✔️](go%2F0355-design-twitter.go)
| [✔️](java%2F0355-design-twitter.java)
| [✔️](javascript%2F0355-design-twitter.js)
| [✔️](kotlin%2F0355-design-twitter.kt)
| [✔️](python%2F0355-design-twitter.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1834 - Single Threaded Cpu](https://leetcode.com/problems/single-threaded-cpu/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1834-single-threaded-cpu.java)
| [✔️](javascript%2F1834-single-threaded-cpu.js)
| [✔️](kotlin%2F1834-single-threaded-cpu.kt)
| [✔️](python%2F1834-single-threaded-cpu.py)
| ❌
| [✔️](rust%2F1834-single-threaded-cpu.rs)
| ❌
| ❌
| ❌
-[1845 - Seat Reservation Manager](https://leetcode.com/problems/seat-reservation-manager/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F1845-seat-reservation-manager.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1882 - Process Tasks Using Servers](https://leetcode.com/problems/process-tasks-using-servers/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1985 - Find The Kth Largest Integer In The Array](https://leetcode.com/problems/find-the-kth-largest-integer-in-the-array/) | ❌
| [✔️](cpp%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.cpp)
| ❌
| ❌
| [✔️](go%2F1985-find-the-kth-largest-integer-in-the-array.go)
| [✔️](java%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.java)
| ❌
| [✔️](kotlin%2F1985-find-the-kth-largest-integer-in-the-array.kt)
| [✔️](python%2F1985-find-the-kth-largest-integer-in-the-array.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.swift)
| ❌
-[0767 - Reorganize String](https://leetcode.com/problems/reorganize-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0767-reorganize-string.java)
| ❌
| ❌
| [✔️](python%2F0767-reorganize-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1405 - Longest Happy String](https://leetcode.com/problems/longest-happy-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1094 - Car Pooling](https://leetcode.com/problems/car-pooling/) | ❌
| ❌
| [✔️](csharp%2F1094-Car-Pooling.cs)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0295 - Find Median From Data Stream](https://leetcode.com/problems/find-median-from-data-stream/) | ❌
| [✔️](cpp%2F0295-find-median-from-data-stream.cpp)
| [✔️](csharp%2F0295-find-median-from-data-stream.cs)
| ❌
| [✔️](go%2F0295-find-median-from-data-stream.go)
| [✔️](java%2F0295-find-median-from-data-stream.java)
| [✔️](javascript%2F0295-find-median-from-data-stream.js)
| [✔️](kotlin%2F0295-find-median-from-data-stream.kt)
| [✔️](python%2F0295-find-median-from-data-stream.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1383 - Maximum Performance of a Team](https://leetcode.com/problems/maximum-performance-of-a-team/) | ❌
| ❌
| [✔️](csharp%2F1383-Maximum-Performance-Of-A-Team.cs)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F1383-maximum-performance-of-a-team.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0703 - Kth Largest Element In a Stream](https://leetcode.com/problems/kth-largest-element-in-a-stream/) | ❌
| [✔️](c%2F0703-kth-largest-element-in-a-stream.c)
| [✔️](cpp%2F0703-kth-largest-element-in-a-stream.cpp)
| [✔️](csharp%2F0703-kth-largest-element-in-a-stream.cs)
| ❌
| [✔️](go%2F0703-kth-largest-element-in-a-stream.go)
| ❌
| [✔️](java%2F0703-kth-largest-element-in-a-stream.java)
| [✔️](javascript%2F0703-kth-largest-element-in-a-stream.js)
| [✔️](kotlin%2F0703-kth-largest-element-in-a-stream.kt)
| [✔️](python%2F0703-kth-largest-element-in-a-stream.py)
| [✔️](ruby%2F0703-kth-largest-element-in-a-stream.rb)
| [✔️](rust%2F0703-kth-largest-element-in-a-stream.rs)
| ❌
| [✔️](swift%2F0703-kth-largest-element-in-a-stream.swift)
| [✔️](typescript%2F0703-kth-largest-element-in-a-stream.ts)
+[1046 - Last Stone Weight](https://leetcode.com/problems/last-stone-weight/) | ❌
| [✔️](c%2F1046-last-stone-weight.c)
| [✔️](cpp%2F1046-Last-Stone-Weight.cpp)
| [✔️](csharp%2F1046-Last-Stone-Weight.cs)
| ❌
| [✔️](go%2F1046-last-stone-weight.go)
| ❌
| [✔️](java%2F1046-Last-Stone-Weight.java)
| [✔️](javascript%2F1046-Last-Stone-Weight.js)
| [✔️](kotlin%2F1046-last-stone-weight.kt)
| [✔️](python%2F1046-last-stone-weight.py)
| [✔️](ruby%2F1046-Last-Stone-Weight.rb)
| [✔️](rust%2F1046-last-stone-weight.rs)
| ❌
| [✔️](swift%2F1046-last-stone-weight.swift)
| [✔️](typescript%2F1046-Last-Stone-Weight.ts)
+[0973 - K Closest Points to Origin](https://leetcode.com/problems/k-closest-points-to-origin/) | ❌
| [✔️](c%2F0973-k-closest-points-to-origin.c)
| [✔️](cpp%2F0973-k-closest-points-to-origin.cpp)
| [✔️](csharp%2F0973-k-closest-points-to-origin.cs)
| ❌
| [✔️](go%2F0973-k-closest-points-to-origin.go)
| ❌
| [✔️](java%2F0973-k-closest-points-to-origin.java)
| [✔️](javascript%2F0973-k-closest-points-to-origin.js)
| [✔️](kotlin%2F0973-k-closest-points-to-origin.kt)
| [✔️](python%2F0973-k-closest-points-to-origin.py)
| ❌
| [✔️](rust%2F0973-k-closest-points-to-origin.rs)
| ❌
| [✔️](swift%2F0973-k-closest-points-to-origin.swift)
| ❌
+[0215 - Kth Largest Element In An Array](https://leetcode.com/problems/kth-largest-element-in-an-array/) | ❌
| [✔️](c%2F0215-kth-largest-element-in-an-array.c)
| [✔️](cpp%2F0215-kth-largest-element-in-an-array.cpp)
| [✔️](csharp%2F0215-kth-largest-element-in-an-array.cs)
| ❌
| [✔️](go%2F0215-kth-largest-element-in-an-array.go)
| ❌
| [✔️](java%2F0215-kth-largest-element-in-an-array.java)
| [✔️](javascript%2F0215-kth-largest-element-in-an-array.js)
| [✔️](kotlin%2F0215-kth-largest-element-in-an-array.kt)
| [✔️](python%2F0215-kth-largest-element-in-an-array.py)
| ❌
| [✔️](rust%2F0215-kth-largest-element-in-an-array.rs)
| [✔️](scala%2F0215-kth-largest-element-in-an-array.scala)
| [✔️](swift%2F0215-kth-largest-element-in-an-array.swift)
| [✔️](typescript%2F0215-kth-largest-element-in-an-array.ts)
+[0621 - Task Scheduler](https://leetcode.com/problems/task-scheduler/) | ❌
| [✔️](c%2F0621-task-scheduler.c)
| [✔️](cpp%2F0621-task-scheduler.cpp)
| [✔️](csharp%2F0621-task-scheduler.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0621-task-scheduler.java)
| [✔️](javascript%2F0621-task-scheduler.js)
| [✔️](kotlin%2F0621-task-scheduler.kt)
| [✔️](python%2F0621-task-scheduler.py)
| ❌
| [✔️](rust%2F0621-task-scheduler.rs)
| ❌
| [✔️](swift%2F0621-task-scheduler.swift)
| [✔️](typescript%2F0621-task-scheduler.ts)
+[0355 - Design Twitter](https://leetcode.com/problems/design-twitter/) | ❌
| ❌
| [✔️](cpp%2F0355-design-twitter.cpp)
| [✔️](csharp%2F0355-design-twitter.cs)
| ❌
| [✔️](go%2F0355-design-twitter.go)
| ❌
| [✔️](java%2F0355-design-twitter.java)
| [✔️](javascript%2F0355-design-twitter.js)
| [✔️](kotlin%2F0355-design-twitter.kt)
| [✔️](python%2F0355-design-twitter.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0355-design-twitter.swift)
| ❌
+[1675 - Minimize Deviation in Array](https://leetcode.com/problems/minimize-deviation-in-array/) | ❌
| ❌
| [✔️](cpp%2F1675-minimize-deviation-in-array.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1675-minimize-deviation-in-array.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2542 - Maximum Subsequence Score](https://leetcode.com/problems/maximum-subsequence-score/) | ❌
| ❌
| [✔️](cpp%2F2542-maximum-subsequence-score.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2542-maximum-subsequence-score.js)
| [✔️](kotlin%2F2542-maximum-subsequence-score.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1834 - Single Threaded Cpu](https://leetcode.com/problems/single-threaded-cpu/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1834-single-threaded-cpu.java)
| [✔️](javascript%2F1834-single-threaded-cpu.js)
| [✔️](kotlin%2F1834-single-threaded-cpu.kt)
| [✔️](python%2F1834-single-threaded-cpu.py)
| ❌
| [✔️](rust%2F1834-single-threaded-cpu.rs)
| ❌
| ❌
| ❌
+[1845 - Seat Reservation Manager](https://leetcode.com/problems/seat-reservation-manager/) | ❌
| ❌
| [✔️](cpp%2F1845-seat-reservation-manager.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1845-seat-reservation-manager.js)
| [✔️](kotlin%2F1845-seat-reservation-manager.kt)
| [✔️](python%2F1845-seat-reservation-manager.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1882 - Process Tasks Using Servers](https://leetcode.com/problems/process-tasks-using-servers/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1882-process-tasks-using-servers.java)
| [✔️](javascript%2F1882-process-tasks-using-servers.js)
| [✔️](kotlin%2F1882-process-tasks-using-servers.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1985 - Find The Kth Largest Integer In The Array](https://leetcode.com/problems/find-the-kth-largest-integer-in-the-array/) | ❌
| ❌
| [✔️](cpp%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.cpp)
| ❌
| ❌
| [✔️](go%2F1985-find-the-kth-largest-integer-in-the-array.go)
| ❌
| [✔️](java%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.java)
| [✔️](javascript%2F1985-find-the-kth-largest-integer-in-the-array.js)
| [✔️](kotlin%2F1985-find-the-kth-largest-integer-in-the-array.kt)
| [✔️](python%2F1985-find-the-kth-largest-integer-in-the-array.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1985-Find-The-Kth-Largest-Integer-In-The-Array.swift)
| ❌
+[0767 - Reorganize String](https://leetcode.com/problems/reorganize-string/) | ❌
| ❌
| [✔️](cpp%2F0767-reorganize-string.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0767-reorganize-string.java)
| [✔️](javascript%2F0767-reorganize-string.js)
| [✔️](kotlin%2F0767-reorganize-string.kt)
| [✔️](python%2F0767-reorganize-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1405 - Longest Happy String](https://leetcode.com/problems/longest-happy-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1405-longest-happy-string.java)
| [✔️](javascript%2F1405-longest-happy-string.js)
| [✔️](kotlin%2F1405-longest-happy-string.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1094 - Car Pooling](https://leetcode.com/problems/car-pooling/) | ❌
| ❌
| [✔️](cpp%2F1094-car-pooling.cpp)
| [✔️](csharp%2F1094-Car-Pooling.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1094-car-pooling.java)
| [✔️](javascript%2F1094-car-pooling.js)
| [✔️](kotlin%2F1094-car-pooling.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0295 - Find Median From Data Stream](https://leetcode.com/problems/find-median-from-data-stream/) | ❌
| ❌
| [✔️](cpp%2F0295-find-median-from-data-stream.cpp)
| [✔️](csharp%2F0295-find-median-from-data-stream.cs)
| ❌
| [✔️](go%2F0295-find-median-from-data-stream.go)
| ❌
| [✔️](java%2F0295-find-median-from-data-stream.java)
| [✔️](javascript%2F0295-find-median-from-data-stream.js)
| [✔️](kotlin%2F0295-find-median-from-data-stream.kt)
| [✔️](python%2F0295-find-median-from-data-stream.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0295-find-median-from-data-stream.swift)
| [✔️](typescript%2F0295-find-median-from-data-stream.ts)
+[1383 - Maximum Performance of a Team](https://leetcode.com/problems/maximum-performance-of-a-team/) | ❌
| ❌
| ❌
| [✔️](csharp%2F1383-Maximum-Performance-Of-A-Team.cs)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1383-maximum-performance-of-a-team.js)
| [✔️](kotlin%2F1383-maximum-performance-of-a-team.kt)
| [✔️](python%2F1383-maximum-performance-of-a-team.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0502 - IPO](https://leetcode.com/problems/ipo/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0502-ipo.java)
| [✔️](javascript%2F0502-ipo.js)
| [✔️](kotlin%2F0502-ipo.kt)
| [✔️](python%2F0502-ipo.py)
| ❌
| [✔️](rust%2F0502-ipo.rs)
| ❌
| [✔️](swift%2F0502-ipo.swift)
| [✔️](typescript%2F0502-ipo.ts)
### Backtracking
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0078 - Subsets](https://leetcode.com/problems/subsets/) | [✔️](c%2F0078-subsets.c)
| [✔️](cpp%2F0078-subsets.cpp)
| [✔️](csharp%2F0078-subsets.cs)
| ❌
| [✔️](go%2F0078-subsets.go)
| [✔️](java%2F0078-subsets.java)
| [✔️](javascript%2F0078-subsets.js)
| [✔️](kotlin%2F0078-subsets.kt)
| [✔️](python%2F0078-subsets.py)
| [✔️](ruby%2F0078-subsets.rb)
| [✔️](rust%2F0078-subsets.rs)
| ❌
| [✔️](swift%2F0078-subsets.swift)
| [✔️](typescript%2F0078-subsets.ts)
-[0039 - Combination Sum](https://leetcode.com/problems/combination-sum/) | [✔️](c%2F0039-combination-sum.c)
| [✔️](cpp%2F0039-combination-sum.cpp)
| [✔️](csharp%2F0039-combination-sum.cs)
| ❌
| [✔️](go%2F0039-combination-sum.go)
| [✔️](java%2F0039-combination-sum.java)
| [✔️](javascript%2F0039-combination-sum.js)
| [✔️](kotlin%2F0039-combination-sum.kt)
| [✔️](python%2F0039-combination-sum.py)
| [✔️](ruby%2F0039-combination-sum.rb)
| [✔️](rust%2F0039-combination-sum.rs)
| ❌
| ❌
| [✔️](typescript%2F0039-combination-sum.ts)
-[0077 - Combinations](https://leetcode.com/problems/combinations/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0077-combinations.go)
| ❌
| ❌
| [✔️](kotlin%2F0077-combinations.kt)
| [✔️](python%2F0077-combinations.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0046 - Permutations](https://leetcode.com/problems/permutations/) | ❌
| [✔️](cpp%2F0046-permutations.cpp)
| [✔️](csharp%2F0046-permutations.cs)
| ❌
| [✔️](go%2F0046-permutations.go)
| [✔️](java%2F0046-permutations.java)
| [✔️](javascript%2F0046-permutations.js)
| [✔️](kotlin%2F0046-permutations.kt)
| [✔️](python%2F0046-permutations.py)
| [✔️](ruby%2F0046-permutations.rb)
| [✔️](rust%2F0046-permutations.rs)
| ❌
| [✔️](swift%2F0046-permutations.swift)
| [✔️](typescript%2F0046-permutations.ts)
-[0090 - Subsets II](https://leetcode.com/problems/subsets-ii/) | ❌
| [✔️](cpp%2F0090-subsets-ii.cpp)
| [✔️](csharp%2F0090-subsets-ii.cs)
| ❌
| [✔️](go%2F0090-subsets-ii.go)
| [✔️](java%2F0090-subsets-ii.java)
| [✔️](javascript%2F0090-subsets-ii.js)
| [✔️](kotlin%2F0090-subsets-ii.kt)
| [✔️](python%2F0090-subsets-ii.py)
| [✔️](ruby%2F0090-subsets-ii.rb)
| [✔️](rust%2F0090-subsets-ii.rs)
| ❌
| ❌
| [✔️](typescript%2F0090-subsets-ii.ts)
-[0040 - Combination Sum II](https://leetcode.com/problems/combination-sum-ii/) | ❌
| [✔️](cpp%2F0040-combination-sum-ii.cpp)
| [✔️](csharp%2F0040-combination-sum-ii.cs)
| ❌
| [✔️](go%2F0040-combination-sum-ii.go)
| [✔️](java%2F0040-combination-sum-ii.java)
| [✔️](javascript%2F0040-combination-sum-ii.js)
| [✔️](kotlin%2F0040-combination-sum-ii.kt)
| [✔️](python%2F0040-combination-sum-ii.py)
| [✔️](ruby%2F0040-combination-sum-ii.rb)
| ❌
| ❌
| ❌
| [✔️](typescript%2F0040-combination-sum-ii.ts)
-[0047 - Permutations II](https://leetcode.com/problems/permutations-ii/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0047-permutations-ii.go)
| ❌
| ❌
| ❌
| [✔️](python%2F0047-permutations-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0079 - Word Search](https://leetcode.com/problems/word-search/) | [✔️](c%2F0079-word-search.c)
| [✔️](cpp%2F0079-word-search.cpp)
| [✔️](csharp%2F0079-word-search.cs)
| ❌
| [✔️](go%2F0079-word-search.go)
| [✔️](java%2F0079-word-search.java)
| [✔️](javascript%2F0079-word-search.js)
| [✔️](kotlin%2F0079-word-search.kt)
| [✔️](python%2F0079-word-search.py)
| [✔️](ruby%2F0079-word-search.rb)
| [✔️](rust%2F0079-word-search.rs)
| ❌
| [✔️](swift%2F0079-word-search.swift)
| ❌
-[0131 - Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/) | ❌
| [✔️](cpp%2F0131-palindrome-partitioning.cpp)
| [✔️](csharp%2F0131-palindrome-partitioning.cs)
| ❌
| [✔️](go%2F0131-palindrome-partitioning.go)
| [✔️](java%2F0131-palindrome-partitioning.java)
| [✔️](javascript%2F0131-palindrome-partitioning.js)
| ❌
| [✔️](python%2F0131-palindrome-partitioning.py)
| [✔️](ruby%2F0131-palindrome-partitioning.rb)
| [✔️](rust%2F0131-palindrome-partitioning.rs)
| ❌
| ❌
| [✔️](typescript%2F0131-palindrome-partitioning.ts)
-[0093 - Restore Ip Addresses](https://leetcode.com/problems/restore-ip-addresses/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0093-restore-ip-addresses.go)
| ❌
| [✔️](javascript%2F0093-restore-ip-addresses.js)
| ❌
| ❌
| ❌
| [✔️](rust%2F0093-restore-ip-addresses.rs)
| ❌
| ❌
| [✔️](typescript%2F0093-restore-ip-addresses.ts)
-[0017 - Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) | ❌
| [✔️](cpp%2F0017-letter-combinations-of-a-phone-number.cpp)
| [✔️](csharp%2F0017-letter-combinations-of-a-phone-number.cs)
| ❌
| [✔️](go%2F0017-letter-combinations-of-a-phone-number.go)
| [✔️](java%2F0017-letter-combinations-of-a-phone-number.java)
| [✔️](javascript%2F0017-letter-combinations-of-a-phone-number.js)
| [✔️](kotlin%2F0017-letter-combinations-of-a-phone-number.kt)
| [✔️](python%2F0017-letter-combinations-of-a-phone-number.py)
| [✔️](ruby%2F0017-letter-combinations-of-a-phone-number.rb)
| [✔️](rust%2F0017-letter-combinations-of-a-phone-number.rs)
| ❌
| ❌
| [✔️](typescript%2F0017-letter-combinations-of-a-phone-number.ts)
-[0473 - Matchsticks to Square](https://leetcode.com/problems/matchsticks-to-square/) | ❌
| [✔️](cpp%2F0473-matchsticks-to-square.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0473-matchsticks-to-square.js)
| ❌
| [✔️](python%2F0473-matchsticks-to-square.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1849 - Splitting a String Into Descending Consecutive Values](https://leetcode.com/problems/splitting-a-string-into-descending-consecutive-values/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F1849-splitting-a-string-into-descending-consecutive-values.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1980 - Find Unique Binary String](https://leetcode.com/problems/find-unique-binary-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1980-find-unique-binary-string.kt)
| [✔️](python%2F1980-find-unique-binary-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1239 - Maximum Length of a Concatenated String With Unique Characters](https://leetcode.com/problems/maximum-length-of-a-concatenated-string-with-unique-characters/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F1239-maximum-length-of-a-concatenated-string-with-unique-characters.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0698 - Partition to K Equal Sum Subsets](https://leetcode.com/problems/partition-to-k-equal-sum-subsets/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0698-partition-to-k-equal-sum-subsets.kt)
| [✔️](python%2F0698-partition-to-k-equal-sum-subsets.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0051 - N Queens](https://leetcode.com/problems/n-queens/) | [✔️](c%2F0051-n-queens.c)
| [✔️](cpp%2F0051-n-queens.cpp)
| [✔️](csharp%2F0051-n-queens.cs)
| ❌
| [✔️](go%2F0051-n-queens.go)
| [✔️](java%2F0051-n-queens.java)
| [✔️](javascript%2F0051-n-queens.js)
| [✔️](kotlin%2F0051-n-queens.kt)
| [✔️](python%2F0051-n-queens.py)
| ❌
| [✔️](rust%2F0051-n-queens.rs)
| ❌
| ❌
| [✔️](typescript%2F0051-n-queens.ts)
-[0052 - N Queens II](https://leetcode.com/problems/n-queens-ii/) | [✔️](c%2F0052-n-queens-ii.c)
| [✔️](cpp%2F0052-n-queens-ii.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0052-n-queens-ii.js)
| [✔️](kotlin%2F0052-n-queens-ii.kt)
| [✔️](python%2F0052-n-queens-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0078 - Subsets](https://leetcode.com/problems/subsets/) | ❌
| [✔️](c%2F0078-subsets.c)
| [✔️](cpp%2F0078-subsets.cpp)
| [✔️](csharp%2F0078-subsets.cs)
| ❌
| [✔️](go%2F0078-subsets.go)
| ❌
| [✔️](java%2F0078-subsets.java)
| [✔️](javascript%2F0078-subsets.js)
| [✔️](kotlin%2F0078-subsets.kt)
| [✔️](python%2F0078-subsets.py)
| [✔️](ruby%2F0078-subsets.rb)
| [✔️](rust%2F0078-subsets.rs)
| ❌
| [✔️](swift%2F0078-subsets.swift)
| [✔️](typescript%2F0078-subsets.ts)
+[0039 - Combination Sum](https://leetcode.com/problems/combination-sum/) | ❌
| [✔️](c%2F0039-combination-sum.c)
| [✔️](cpp%2F0039-combination-sum.cpp)
| [✔️](csharp%2F0039-combination-sum.cs)
| ❌
| [✔️](go%2F0039-combination-sum.go)
| ❌
| [✔️](java%2F0039-combination-sum.java)
| [✔️](javascript%2F0039-combination-sum.js)
| [✔️](kotlin%2F0039-combination-sum.kt)
| [✔️](python%2F0039-combination-sum.py)
| [✔️](ruby%2F0039-combination-sum.rb)
| [✔️](rust%2F0039-combination-sum.rs)
| ❌
| [✔️](swift%2F0039-combination-sum.swift)
| [✔️](typescript%2F0039-combination-sum.ts)
+[0077 - Combinations](https://leetcode.com/problems/combinations/) | ❌
| ❌
| [✔️](cpp%2F0077-combinations.cpp)
| [✔️](csharp%2F0077-combinations.cs)
| ❌
| [✔️](go%2F0077-combinations.go)
| ❌
| [✔️](java%2F0077-combinations.java)
| ❌
| [✔️](kotlin%2F0077-combinations.kt)
| [✔️](python%2F0077-combinations.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0077-combinations.swift)
| ❌
+[0046 - Permutations](https://leetcode.com/problems/permutations/) | ❌
| [✔️](c%2F0046-permutations.c)
| [✔️](cpp%2F0046-permutations.cpp)
| [✔️](csharp%2F0046-permutations.cs)
| ❌
| [✔️](go%2F0046-permutations.go)
| ❌
| [✔️](java%2F0046-permutations.java)
| [✔️](javascript%2F0046-permutations.js)
| [✔️](kotlin%2F0046-permutations.kt)
| [✔️](python%2F0046-permutations.py)
| [✔️](ruby%2F0046-permutations.rb)
| [✔️](rust%2F0046-permutations.rs)
| ❌
| [✔️](swift%2F0046-permutations.swift)
| [✔️](typescript%2F0046-permutations.ts)
+[0090 - Subsets II](https://leetcode.com/problems/subsets-ii/) | ❌
| [✔️](c%2F0090-subsets-ii.c)
| [✔️](cpp%2F0090-subsets-ii.cpp)
| [✔️](csharp%2F0090-subsets-ii.cs)
| ❌
| [✔️](go%2F0090-subsets-ii.go)
| ❌
| [✔️](java%2F0090-subsets-ii.java)
| [✔️](javascript%2F0090-subsets-ii.js)
| [✔️](kotlin%2F0090-subsets-ii.kt)
| [✔️](python%2F0090-subsets-ii.py)
| [✔️](ruby%2F0090-subsets-ii.rb)
| [✔️](rust%2F0090-subsets-ii.rs)
| ❌
| [✔️](swift%2F0090-subsets-ii.swift)
| [✔️](typescript%2F0090-subsets-ii.ts)
+[0040 - Combination Sum II](https://leetcode.com/problems/combination-sum-ii/) | ❌
| [✔️](c%2F0040-combination-sum-ii.c)
| [✔️](cpp%2F0040-combination-sum-ii.cpp)
| [✔️](csharp%2F0040-combination-sum-ii.cs)
| ❌
| [✔️](go%2F0040-combination-sum-ii.go)
| ❌
| [✔️](java%2F0040-combination-sum-ii.java)
| [✔️](javascript%2F0040-combination-sum-ii.js)
| [✔️](kotlin%2F0040-combination-sum-ii.kt)
| [✔️](python%2F0040-combination-sum-ii.py)
| [✔️](ruby%2F0040-combination-sum-ii.rb)
| ❌
| ❌
| [✔️](swift%2F0040-combination-sum-ii.swift)
| [✔️](typescript%2F0040-combination-sum-ii.ts)
+[0047 - Permutations II](https://leetcode.com/problems/permutations-ii/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0047-permutations-ii.cs)
| ❌
| [✔️](go%2F0047-permutations-ii.go)
| ❌
| [✔️](java%2F0047-permutations-ii.java)
| ❌
| [✔️](kotlin%2F0047-permutations-ii.kt)
| [✔️](python%2F0047-permutations-ii.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0047-permutations-ii.swift)
| [✔️](typescript%2F0047-permutations-ii.ts)
+[0079 - Word Search](https://leetcode.com/problems/word-search/) | ❌
| [✔️](c%2F0079-word-search.c)
| [✔️](cpp%2F0079-word-search.cpp)
| [✔️](csharp%2F0079-word-search.cs)
| ❌
| [✔️](go%2F0079-word-search.go)
| ❌
| [✔️](java%2F0079-word-search.java)
| [✔️](javascript%2F0079-word-search.js)
| [✔️](kotlin%2F0079-word-search.kt)
| [✔️](python%2F0079-word-search.py)
| [✔️](ruby%2F0079-word-search.rb)
| [✔️](rust%2F0079-word-search.rs)
| ❌
| [✔️](swift%2F0079-word-search.swift)
| [✔️](typescript%2F0079-word-search.ts)
+[0131 - Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/) | ❌
| ❌
| [✔️](cpp%2F0131-palindrome-partitioning.cpp)
| [✔️](csharp%2F0131-palindrome-partitioning.cs)
| ❌
| [✔️](go%2F0131-palindrome-partitioning.go)
| ❌
| [✔️](java%2F0131-palindrome-partitioning.java)
| [✔️](javascript%2F0131-palindrome-partitioning.js)
| [✔️](kotlin%2F0131-palindrome-partitioning.kt)
| [✔️](python%2F0131-palindrome-partitioning.py)
| [✔️](ruby%2F0131-palindrome-partitioning.rb)
| [✔️](rust%2F0131-palindrome-partitioning.rs)
| ❌
| [✔️](swift%2F0131-palindrome-partitioning.swift)
| [✔️](typescript%2F0131-palindrome-partitioning.ts)
+[0093 - Restore IP Addresses](https://leetcode.com/problems/restore-ip-addresses/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0093-restore-ip-addresses.cs)
| ❌
| [✔️](go%2F0093-restore-ip-addresses.go)
| ❌
| ❌
| [✔️](javascript%2F0093-restore-ip-addresses.js)
| [✔️](kotlin%2F0093-restore-ip-addresses.kt)
| ❌
| ❌
| [✔️](rust%2F0093-restore-ip-addresses.rs)
| ❌
| ❌
| [✔️](typescript%2F0093-restore-ip-addresses.ts)
+[0017 - Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) | ❌
| ❌
| [✔️](cpp%2F0017-letter-combinations-of-a-phone-number.cpp)
| [✔️](csharp%2F0017-letter-combinations-of-a-phone-number.cs)
| ❌
| [✔️](go%2F0017-letter-combinations-of-a-phone-number.go)
| ❌
| [✔️](java%2F0017-letter-combinations-of-a-phone-number.java)
| [✔️](javascript%2F0017-letter-combinations-of-a-phone-number.js)
| [✔️](kotlin%2F0017-letter-combinations-of-a-phone-number.kt)
| [✔️](python%2F0017-letter-combinations-of-a-phone-number.py)
| [✔️](ruby%2F0017-letter-combinations-of-a-phone-number.rb)
| [✔️](rust%2F0017-letter-combinations-of-a-phone-number.rs)
| ❌
| [✔️](swift%2F0017-letter-combinations-of-a-phone-number.swift)
| [✔️](typescript%2F0017-letter-combinations-of-a-phone-number.ts)
+[0473 - Matchsticks to Square](https://leetcode.com/problems/matchsticks-to-square/) | ❌
| ❌
| [✔️](cpp%2F0473-matchsticks-to-square.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0473-matchsticks-to-square.java)
| [✔️](javascript%2F0473-matchsticks-to-square.js)
| [✔️](kotlin%2F0473-matchsticks-to-square.kt)
| [✔️](python%2F0473-matchsticks-to-square.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1849 - Splitting a String Into Descending Consecutive Values](https://leetcode.com/problems/splitting-a-string-into-descending-consecutive-values/) | ❌
| ❌
| [✔️](cpp%2F1849-splitting-a-string-into-descending-consecutive-values.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1849-splitting-a-string-into-descending-consecutive-values.java)
| ❌
| [✔️](kotlin%2F1849-splitting-a-string-into-descending-consecutive-values.kt)
| [✔️](python%2F1849-splitting-a-string-into-descending-consecutive-values.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1980 - Find Unique Binary String](https://leetcode.com/problems/find-unique-binary-string/) | ❌
| ❌
| [✔️](cpp%2F1980-find-unique-binary-string.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1980-find-unique-binary-string.java)
| ❌
| [✔️](kotlin%2F1980-find-unique-binary-string.kt)
| [✔️](python%2F1980-find-unique-binary-string.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1239 - Maximum Length of a Concatenated String With Unique Characters](https://leetcode.com/problems/maximum-length-of-a-concatenated-string-with-unique-characters/) | ❌
| ❌
| ❌
| [✔️](csharp%2F1239-maximum-length-of-a-concatenated-string-with-unique-characters.cs)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1239-maximum-length-of-a-concatenated-string-with-unique-characters.kt)
| [✔️](python%2F1239-maximum-length-of-a-concatenated-string-with-unique-characters.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0698 - Partition to K Equal Sum Subsets](https://leetcode.com/problems/partition-to-k-equal-sum-subsets/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0698-partition-to-k-equal-sum-subsets.java)
| ❌
| [✔️](kotlin%2F0698-partition-to-k-equal-sum-subsets.kt)
| [✔️](python%2F0698-partition-to-k-equal-sum-subsets.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0051 - N Queens](https://leetcode.com/problems/n-queens/) | ❌
| [✔️](c%2F0051-n-queens.c)
| [✔️](cpp%2F0051-n-queens.cpp)
| [✔️](csharp%2F0051-n-queens.cs)
| ❌
| [✔️](go%2F0051-n-queens.go)
| ❌
| [✔️](java%2F0051-n-queens.java)
| [✔️](javascript%2F0051-n-queens.js)
| [✔️](kotlin%2F0051-n-queens.kt)
| [✔️](python%2F0051-n-queens.py)
| ❌
| [✔️](rust%2F0051-n-queens.rs)
| ❌
| [✔️](swift%2F0051-n-queens.swift)
| [✔️](typescript%2F0051-n-queens.ts)
+[0052 - N Queens II](https://leetcode.com/problems/n-queens-ii/) | ❌
| [✔️](c%2F0052-n-queens-ii.c)
| [✔️](cpp%2F0052-n-queens-ii.cpp)
| [✔️](csharp%2F0052-n-queens-ii.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0052-n-queens-ii.java)
| [✔️](javascript%2F0052-n-queens-ii.js)
| [✔️](kotlin%2F0052-n-queens-ii.kt)
| [✔️](python%2F0052-n-queens-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
### Graphs
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0463 - Island Perimeter](https://leetcode.com/problems/island-perimeter/) | [✔️](c%2F0463-island-perimeter.c)
| [✔️](cpp%2F0463-island-perimeter.cpp)
| [✔️](csharp%2F0463-island-perimeter.cs)
| ❌
| [✔️](go%2F0463-island-perimeter.go)
| [✔️](java%2F0463-island-perimeter.java)
| [✔️](javascript%2F0463-island-perimeter.js)
| [✔️](kotlin%2F0463-island-perimeter.kt)
| [✔️](python%2F0463-island-perimeter.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0953 - Verifying An Alien Dictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/) | [✔️](c%2F0953-verifying-an-alien-dictionary.c)
| [✔️](cpp%2F0953-verifying-an-alien-dictionary.cpp)
| ❌
| ❌
| [✔️](go%2F0953-verifying-an-alien-dictionary.go)
| [✔️](java%2F0953-verifying-an-alien-dictionary.java)
| [✔️](javascript%2F0953-verifying-an-alien-dictionary.js)
| [✔️](kotlin%2F0953-verifying-an-alien-dictionary.kt)
| [✔️](python%2F0953-verifying-an-alien-dictionary.py)
| ❌
| [✔️](rust%2F0953-verifying-an-alien-dictionary.rs)
| ❌
| ❌
| ❌
-[0200 - Number of Islands](https://leetcode.com/problems/number-of-islands/) | [✔️](c%2F0200-number-of-islands.c)
| [✔️](cpp%2F0200-number-of-islands.cpp)
| [✔️](csharp%2F0200-number-of-islands.cs)
| ❌
| [✔️](go%2F0200-number-of-islands.go)
| [✔️](java%2F0200-number-of-islands.java)
| [✔️](javascript%2F0200-number-of-islands.js)
| [✔️](kotlin%2F0200-number-of-islands.kt)
| [✔️](python%2F0200-number-of-islands.py)
| [✔️](ruby%2F0200-number-of-islands.rb)
| ❌
| ❌
| [✔️](swift%2F0200-number-of-islands.swift)
| [✔️](typescript%2F0200-number-of-islands.ts)
-[0133 - Clone Graph](https://leetcode.com/problems/clone-graph/) | [✔️](c%2F0133-clone-graph.c)
| [✔️](cpp%2F0133-clone-graph.cpp)
| [✔️](csharp%2F0133-clone-graph.cs)
| ❌
| [✔️](go%2F0133-clone-graph.go)
| [✔️](java%2F0133-clone-graph.java)
| [✔️](javascript%2F0133-clone-graph.js)
| [✔️](kotlin%2F0133-clone-graph.kt)
| [✔️](python%2F0133-clone-graph.py)
| [✔️](ruby%2F0133-clone-graph.rb)
| ❌
| ❌
| [✔️](swift%2F0133-clone-graph.swift)
| [✔️](typescript%2F0133-clone-graph.ts)
-[0695 - Max Area of Island](https://leetcode.com/problems/max-area-of-island/) | [✔️](c%2F0695-max-area-of-island.c)
| [✔️](cpp%2F0695-max-area-of-island.cpp)
| [✔️](csharp%2F0695-max-area-of-island.cs)
| ❌
| [✔️](go%2F0695-max-area-of-island.go)
| [✔️](java%2F0695-max-area-of-island.java)
| [✔️](javascript%2F0695-max-area-of-island.js)
| [✔️](kotlin%2F0695-max-area-of-island.kt)
| [✔️](python%2F0695-max-area-of-island.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0695-max-area-of-island.ts)
-[1905 - Count Sub Islands](https://leetcode.com/problems/count-sub-islands/) | [✔️](c%2F1905-Count-Sub-Islands.c)
| [✔️](cpp%2F1905-count-sub-islands.cpp)
| [✔️](csharp%2F1905-Count-Sub-Islands.cs)
| ❌
| [✔️](go%2F1905-count-sub-islands.go)
| [✔️](java%2F1905-count-sub-islands.java)
| [✔️](javascript%2F1905-count-sub-islands.js)
| [✔️](kotlin%2F1905-count-sub-islands.kt)
| [✔️](python%2F1905-count-sub-islands.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0417 - Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/) | [✔️](c%2F0417-pacific-atlantic-water-flow.c)
| [✔️](cpp%2F0417-pacific-atlantic-water-flow.cpp)
| [✔️](csharp%2F0417-pacific-atlantic-water-flow.cs)
| ❌
| [✔️](go%2F0417-pacific-atlantic-water-flow.go)
| [✔️](java%2F0417-pacific-atlantic-water-flow.java)
| [✔️](javascript%2F0417-pacific-atlantic-water-flow.js)
| [✔️](kotlin%2F0417-pacific-atlantic-water-flow.kt)
| [✔️](python%2F0417-pacific-atlantic-water-flow.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0417-pacific-atlantic-water-flow.ts)
-[0130 - Surrounded Regions](https://leetcode.com/problems/surrounded-regions/) | [✔️](c%2F0130-surrounded-regions.c)
| [✔️](cpp%2F0130-surrounded-regions.cpp)
| [✔️](csharp%2F0130-surrounded-regions.cs)
| ❌
| [✔️](go%2F0130-surrounded-regions.go)
| [✔️](java%2F0130-surrounded-regions.java)
| [✔️](javascript%2F0130-surrounded-regions.js)
| [✔️](kotlin%2F0130-surrounded-regions.kt)
| [✔️](python%2F0130-surrounded-regions.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0130-surrounded-regions.swift)
| [✔️](typescript%2F0130-surrounded-regions.ts)
-[1466 - Reorder Routes to Make All Paths Lead to The City Zero](https://leetcode.com/problems/reorder-routes-to-make-all-paths-lead-to-the-city-zero/) | ❌
| [✔️](cpp%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.cpp)
| [✔️](csharp%2F1466-Reorder-Routes-to-Make-All-Paths-Lead-To-The-City-Zero.cs)
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0994 - Rotting Oranges](https://leetcode.com/problems/rotting-oranges/) | [✔️](c%2F0994-rotting-oranges.c)
| [✔️](cpp%2F0994-rotting-oranges.cpp)
| [✔️](csharp%2F0994-rotting-oranges.cs)
| ❌
| [✔️](go%2F0994-rotting-oranges.go)
| [✔️](java%2F0994-rotting-oranges.java)
| [✔️](javascript%2F0994-rotting-oranges.js)
| [✔️](kotlin%2F0994-rotting-oranges.kt)
| [✔️](python%2F0994-rotting-oranges.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0994-rotting-oranges.ts)
-[0286 - Walls And Gates](https://leetcode.com/problems/walls-and-gates/) | ❌
| [✔️](cpp%2F0286-walls-and-gates.cpp)
| [✔️](csharp%2F0286-walls-and-gates.cs)
| ❌
| ❌
| [✔️](java%2F0286-walls-and-gates.java)
| [✔️](javascript%2F0286-walls-and-gates.js)
| ❌
| [✔️](python%2F0286-walls-and-gates.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0909 - Snakes And Ladders](https://leetcode.com/problems/snakes-and-ladders/) | ❌
| ❌
| [✔️](csharp%2F0909-snakes-and-ladders.cs)
| ❌
| ❌
| [✔️](java%2F0909-snakes-and-ladders.java)
| ❌
| ❌
| [✔️](python%2F0909-snakes-and-ladders.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0752 - Open The Lock](https://leetcode.com/problems/open-the-lock/) | ❌
| ❌
| [✔️](csharp%2F0752-open-the-lock.cs)
| ❌
| ❌
| [✔️](java%2F0752-open-the-lock.java)
| ❌
| [✔️](kotlin%2F0752-open-the-lock.kt)
| [✔️](python%2F0752-open-the-lock.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0802 - Find Eventual Safe States](https://leetcode.com/problems/find-eventual-safe-states/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0802-find-eventual-safe-states.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0207 - Course Schedule](https://leetcode.com/problems/course-schedule/) | ❌
| [✔️](cpp%2F0207-course-schedule.cpp)
| [✔️](csharp%2F0207-course-schedule.cs)
| ❌
| [✔️](go%2F0207-course-schedule.go)
| [✔️](java%2F0207-course-schedule.java)
| [✔️](javascript%2F0207-course-schedule.js)
| [✔️](kotlin%2F0207-course-schedule.kt)
| [✔️](python%2F0207-course-schedule.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0207-course-schedule.swift)
| [✔️](typescript%2F0207-course-schedule.ts)
-[0210 - Course Schedule II](https://leetcode.com/problems/course-schedule-ii/) | ❌
| [✔️](cpp%2F0210-course-schedule-ii.cpp)
| [✔️](csharp%2F0210-course-schedule-ii.cs)
| ❌
| [✔️](go%2F0210-course-schedule-ii.go)
| [✔️](java%2F0210-course-schedule-ii.java)
| [✔️](javascript%2F0210-course-schedule-ii.js)
| [✔️](kotlin%2F0210-course-schedule-ii.kt)
| [✔️](python%2F0210-course-schedule-ii.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0210-course-schedule-ii.ts)
-[1958 - Check if Move Is Legal](https://leetcode.com/problems/check-if-move-is-legal/) | ❌
| [✔️](cpp%2F1958-check-if-move-is-legal.cpp)
| ❌
| ❌
| [✔️](go%2F1958-check-if-move-is-legal.go)
| [✔️](java%2F1958-check-if-move-is-legal.java)
| [✔️](javascript%2F1958-check-if-move-is-legal.js)
| [✔️](kotlin%2F1958-check-if-move-is-legal.kt)
| [✔️](python%2F1958-check-if-move-is-legal.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0934 - Shortest Bridge](https://leetcode.com/problems/shortest-bridge/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0934-shortest-bridge.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1091 - Shortest Path in Binary Matrix](https://leetcode.com/problems/shortest-path-in-binary-matrix/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1091-shortest-path-in-binary-matrix.kt)
| [✔️](python%2F1091-shortest-path-in-binary-matrix.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0684 - Redundant Connection](https://leetcode.com/problems/redundant-connection/) | [✔️](c%2F0684-redundant-connection.c)
| [✔️](cpp%2F0684-redundant-connection.cpp)
| [✔️](csharp%2F0684-redundant-connection.cs)
| ❌
| [✔️](go%2F0684-redundant-connection.go)
| [✔️](java%2F0684-redundant-connection.java)
| [✔️](javascript%2F0684-redundant-connection.js)
| [✔️](kotlin%2F0684-redundant-connection.kt)
| [✔️](python%2F0684-redundant-connection.py)
| ❌
| [✔️](rust%2F0684-redundant-connection.rs)
| ❌
| ❌
| [✔️](typescript%2F0684-redundant-connection.ts)
-[0323 - Number of Connected Components In An Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/) | ❌
| [✔️](cpp%2F0323-number-of-connected-components-in-an-undirected-graph.cpp)
| [✔️](csharp%2F0323-number-of-connected-components-in-an-undirected-graph.cs)
| ❌
| [✔️](go%2F0323-number-of-connected-components-in-an-undirected-graph.go)
| [✔️](java%2F0323-number-of-connected-components-in-an-undirected-graph.java)
| [✔️](javascript%2F0323-number-of-connected-components-in-an-undirected-graph.js)
| [✔️](kotlin%2F0323-number-of-connected-components-in-an-undirected-graph.kt)
| [✔️](python%2F0323-number-of-connected-components-in-an-undirected-graph.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0323-number-of-connected-components-in-an-undirected-graph.swift)
| ❌
-[0261 - Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/) | ❌
| [✔️](cpp%2F0261-graph-valid-tree.cpp)
| [✔️](csharp%2F0261-graph-valid-tree.cs)
| ❌
| ❌
| [✔️](java%2F0261-graph-valid-tree.java)
| [✔️](javascript%2F0261-graph-valid-tree.js)
| ❌
| [✔️](python%2F0261-graph-valid-tree.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0261-graph-valid-tree.swift)
| [✔️](typescript%2F0261-graph-valid-tree.ts)
-[1553 - Minimum Number of Days to Eat N Oranges](https://leetcode.com/problems/minimum-number-of-days-to-eat-n-oranges/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0127 - Word Ladder](https://leetcode.com/problems/word-ladder/) | ❌
| [✔️](cpp%2F0127-word-ladder.cpp)
| [✔️](csharp%2F0127-word-ladder.cs)
| ❌
| [✔️](go%2F0127-word-ladder.go)
| [✔️](java%2F0127-word-ladder.java)
| [✔️](javascript%2F0127-word-ladder.js)
| [✔️](kotlin%2F0127-word-ladder.kt)
| [✔️](python%2F0127-word-ladder.py)
| ❌
| [✔️](rust%2F0127-word-ladder.rs)
| ❌
| ❌
| [✔️](typescript%2F0127-word-ladder.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0463 - Island Perimeter](https://leetcode.com/problems/island-perimeter/) | ❌
| [✔️](c%2F0463-island-perimeter.c)
| [✔️](cpp%2F0463-island-perimeter.cpp)
| [✔️](csharp%2F0463-island-perimeter.cs)
| ❌
| [✔️](go%2F0463-island-perimeter.go)
| ❌
| [✔️](java%2F0463-island-perimeter.java)
| [✔️](javascript%2F0463-island-perimeter.js)
| [✔️](kotlin%2F0463-island-perimeter.kt)
| [✔️](python%2F0463-island-perimeter.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0953 - Verifying An Alien Dictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/) | ❌
| [✔️](c%2F0953-verifying-an-alien-dictionary.c)
| [✔️](cpp%2F0953-verifying-an-alien-dictionary.cpp)
| ❌
| ❌
| [✔️](go%2F0953-verifying-an-alien-dictionary.go)
| ❌
| [✔️](java%2F0953-verifying-an-alien-dictionary.java)
| [✔️](javascript%2F0953-verifying-an-alien-dictionary.js)
| [✔️](kotlin%2F0953-verifying-an-alien-dictionary.kt)
| [✔️](python%2F0953-verifying-an-alien-dictionary.py)
| ❌
| [✔️](rust%2F0953-verifying-an-alien-dictionary.rs)
| ❌
| ❌
| ❌
+[0200 - Number of Islands](https://leetcode.com/problems/number-of-islands/) | ❌
| [✔️](c%2F0200-number-of-islands.c)
| [✔️](cpp%2F0200-number-of-islands.cpp)
| [✔️](csharp%2F0200-number-of-islands.cs)
| ❌
| [✔️](go%2F0200-number-of-islands.go)
| ❌
| [✔️](java%2F0200-number-of-islands.java)
| [✔️](javascript%2F0200-number-of-islands.js)
| [✔️](kotlin%2F0200-number-of-islands.kt)
| [✔️](python%2F0200-number-of-islands.py)
| [✔️](ruby%2F0200-number-of-islands.rb)
| [✔️](rust%2F0200-number-of-islands.rs)
| ❌
| [✔️](swift%2F0200-number-of-islands.swift)
| [✔️](typescript%2F0200-number-of-islands.ts)
+[0133 - Clone Graph](https://leetcode.com/problems/clone-graph/) | ❌
| [✔️](c%2F0133-clone-graph.c)
| [✔️](cpp%2F0133-clone-graph.cpp)
| [✔️](csharp%2F0133-clone-graph.cs)
| ❌
| [✔️](go%2F0133-clone-graph.go)
| ❌
| [✔️](java%2F0133-clone-graph.java)
| [✔️](javascript%2F0133-clone-graph.js)
| [✔️](kotlin%2F0133-clone-graph.kt)
| [✔️](python%2F0133-clone-graph.py)
| [✔️](ruby%2F0133-clone-graph.rb)
| ❌
| ❌
| [✔️](swift%2F0133-clone-graph.swift)
| [✔️](typescript%2F0133-clone-graph.ts)
+[0695 - Max Area of Island](https://leetcode.com/problems/max-area-of-island/) | ❌
| [✔️](c%2F0695-max-area-of-island.c)
| [✔️](cpp%2F0695-max-area-of-island.cpp)
| [✔️](csharp%2F0695-max-area-of-island.cs)
| ❌
| [✔️](go%2F0695-max-area-of-island.go)
| ❌
| [✔️](java%2F0695-max-area-of-island.java)
| [✔️](javascript%2F0695-max-area-of-island.js)
| [✔️](kotlin%2F0695-max-area-of-island.kt)
| [✔️](python%2F0695-max-area-of-island.py)
| ❌
| [✔️](rust%2F0695-max-area-of-island.rs)
| ❌
| [✔️](swift%2F0695-max-area-of-island.swift)
| [✔️](typescript%2F0695-max-area-of-island.ts)
+[1905 - Count Sub Islands](https://leetcode.com/problems/count-sub-islands/) | ❌
| [✔️](c%2F1905-Count-Sub-Islands.c)
| [✔️](cpp%2F1905-count-sub-islands.cpp)
| [✔️](csharp%2F1905-Count-Sub-Islands.cs)
| ❌
| [✔️](go%2F1905-count-sub-islands.go)
| ❌
| [✔️](java%2F1905-count-sub-islands.java)
| [✔️](javascript%2F1905-count-sub-islands.js)
| [✔️](kotlin%2F1905-count-sub-islands.kt)
| [✔️](python%2F1905-count-sub-islands.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0417 - Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/) | ❌
| [✔️](c%2F0417-pacific-atlantic-water-flow.c)
| [✔️](cpp%2F0417-pacific-atlantic-water-flow.cpp)
| [✔️](csharp%2F0417-pacific-atlantic-water-flow.cs)
| ❌
| [✔️](go%2F0417-pacific-atlantic-water-flow.go)
| ❌
| [✔️](java%2F0417-pacific-atlantic-water-flow.java)
| [✔️](javascript%2F0417-pacific-atlantic-water-flow.js)
| [✔️](kotlin%2F0417-pacific-atlantic-water-flow.kt)
| [✔️](python%2F0417-pacific-atlantic-water-flow.py)
| ❌
| [✔️](rust%2F0417-pacific-atlantic-water-flow.rs)
| ❌
| [✔️](swift%2F0417-pacific-atlantic-water-flow.swift)
| [✔️](typescript%2F0417-pacific-atlantic-water-flow.ts)
+[0130 - Surrounded Regions](https://leetcode.com/problems/surrounded-regions/) | ❌
| [✔️](c%2F0130-surrounded-regions.c)
| [✔️](cpp%2F0130-surrounded-regions.cpp)
| [✔️](csharp%2F0130-surrounded-regions.cs)
| [✔️](dart%2F0130-surrounded-regions.dart)
| [✔️](go%2F0130-surrounded-regions.go)
| ❌
| [✔️](java%2F0130-surrounded-regions.java)
| [✔️](javascript%2F0130-surrounded-regions.js)
| [✔️](kotlin%2F0130-surrounded-regions.kt)
| [✔️](python%2F0130-surrounded-regions.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0130-surrounded-regions.swift)
| [✔️](typescript%2F0130-surrounded-regions.ts)
+[1466 - Reorder Routes to Make All Paths Lead to The City Zero](https://leetcode.com/problems/reorder-routes-to-make-all-paths-lead-to-the-city-zero/) | ❌
| ❌
| [✔️](cpp%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.cpp)
| [✔️](csharp%2F1466-Reorder-Routes-to-Make-All-Paths-Lead-To-The-City-Zero.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.java)
| ❌
| [✔️](kotlin%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.kt)
| [✔️](python%2F1466-reorder-routes-to-make-all-paths-lead-to-the-city-zero.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0994 - Rotting Oranges](https://leetcode.com/problems/rotting-oranges/) | ❌
| [✔️](c%2F0994-rotting-oranges.c)
| [✔️](cpp%2F0994-rotting-oranges.cpp)
| [✔️](csharp%2F0994-rotting-oranges.cs)
| ❌
| [✔️](go%2F0994-rotting-oranges.go)
| ❌
| [✔️](java%2F0994-rotting-oranges.java)
| [✔️](javascript%2F0994-rotting-oranges.js)
| [✔️](kotlin%2F0994-rotting-oranges.kt)
| [✔️](python%2F0994-rotting-oranges.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0994-rotting-oranges.swift)
| [✔️](typescript%2F0994-rotting-oranges.ts)
+[0286 - Walls And Gates](https://leetcode.com/problems/walls-and-gates/) | ❌
| ❌
| [✔️](cpp%2F0286-walls-and-gates.cpp)
| [✔️](csharp%2F0286-walls-and-gates.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0286-walls-and-gates.java)
| [✔️](javascript%2F0286-walls-and-gates.js)
| [✔️](kotlin%2F0286-walls-and-gates.kt)
| [✔️](python%2F0286-walls-and-gates.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0286-walls-and-gates.swift)
| ❌
+[0909 - Snakes And Ladders](https://leetcode.com/problems/snakes-and-ladders/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0909-snakes-and-ladders.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0909-snakes-and-ladders.java)
| [✔️](javascript%2F0909-snakes-and-ladders.js)
| [✔️](kotlin%2F0909-snakes-and-ladders.kt)
| [✔️](python%2F0909-snakes-and-ladders.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0752 - Open The Lock](https://leetcode.com/problems/open-the-lock/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0752-open-the-lock.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0752-open-the-lock.java)
| [✔️](javascript%2F0752-open-the-lock.js)
| [✔️](kotlin%2F0752-open-the-lock.kt)
| [✔️](python%2F0752-open-the-lock.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0802 - Find Eventual Safe States](https://leetcode.com/problems/find-eventual-safe-states/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0802-find-eventual-safe-states.java)
| ❌
| [✔️](kotlin%2F0802-find-eventual-safe-states.kt)
| [✔️](python%2F0802-find-eventual-safe-states.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0207 - Course Schedule](https://leetcode.com/problems/course-schedule/) | ❌
| [✔️](c%2F0207-course-schedule.c)
| [✔️](cpp%2F0207-course-schedule.cpp)
| [✔️](csharp%2F0207-course-schedule.cs)
| ❌
| [✔️](go%2F0207-course-schedule.go)
| ❌
| [✔️](java%2F0207-course-schedule.java)
| [✔️](javascript%2F0207-course-schedule.js)
| [✔️](kotlin%2F0207-course-schedule.kt)
| [✔️](python%2F0207-course-schedule.py)
| ❌
| [✔️](rust%2F0207-course-schedule.rs)
| ❌
| [✔️](swift%2F0207-course-schedule.swift)
| [✔️](typescript%2F0207-course-schedule.ts)
+[0210 - Course Schedule II](https://leetcode.com/problems/course-schedule-ii/) | ❌
| ❌
| [✔️](cpp%2F0210-course-schedule-ii.cpp)
| [✔️](csharp%2F0210-course-schedule-ii.cs)
| ❌
| [✔️](go%2F0210-course-schedule-ii.go)
| ❌
| [✔️](java%2F0210-course-schedule-ii.java)
| [✔️](javascript%2F0210-course-schedule-ii.js)
| [✔️](kotlin%2F0210-course-schedule-ii.kt)
| [✔️](python%2F0210-course-schedule-ii.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0210-course-schedule-ii.swift)
| [✔️](typescript%2F0210-course-schedule-ii.ts)
+[1462 - Course Schedule IV](https://leetcode.com/problems/course-schedule-iv/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1462-course-schedule-iv.java)
| ❌
| [✔️](kotlin%2F1462-course-schedule-iv.kt)
| [✔️](python%2F1462-course-schedule-iv.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1462-course-schedule-iv.swift)
| [✔️](typescript%2F1462-course-schedule-iv.ts)
+[1958 - Check if Move Is Legal](https://leetcode.com/problems/check-if-move-is-legal/) | ❌
| ❌
| [✔️](cpp%2F1958-check-if-move-is-legal.cpp)
| ❌
| ❌
| [✔️](go%2F1958-check-if-move-is-legal.go)
| ❌
| [✔️](java%2F1958-check-if-move-is-legal.java)
| [✔️](javascript%2F1958-check-if-move-is-legal.js)
| [✔️](kotlin%2F1958-check-if-move-is-legal.kt)
| [✔️](python%2F1958-check-if-move-is-legal.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0934 - Shortest Bridge](https://leetcode.com/problems/shortest-bridge/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0934-shortest-bridge.java)
| [✔️](javascript%2F0934-shortest-bridge.js)
| [✔️](kotlin%2F0934-shortest-bridge.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1091 - Shortest Path in Binary Matrix](https://leetcode.com/problems/shortest-path-in-binary-matrix/) | ❌
| ❌
| [✔️](cpp%2F1091-shortest-path-in-binary-matrix.cpp)
| ❌
| ❌
| [✔️](go%2F1091-shortest-path-in-binary-matrix.go)
| ❌
| [✔️](java%2F1091-shortest-path-in-binary-matrix.java)
| ❌
| [✔️](kotlin%2F1091-shortest-path-in-binary-matrix.kt)
| [✔️](python%2F1091-shortest-path-in-binary-matrix.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1091-shortest-path-in-binary-matrix.swift)
| ❌
+[0684 - Redundant Connection](https://leetcode.com/problems/redundant-connection/) | ❌
| [✔️](c%2F0684-redundant-connection.c)
| [✔️](cpp%2F0684-redundant-connection.cpp)
| [✔️](csharp%2F0684-redundant-connection.cs)
| ❌
| [✔️](go%2F0684-redundant-connection.go)
| ❌
| [✔️](java%2F0684-redundant-connection.java)
| [✔️](javascript%2F0684-redundant-connection.js)
| [✔️](kotlin%2F0684-redundant-connection.kt)
| [✔️](python%2F0684-redundant-connection.py)
| ❌
| [✔️](rust%2F0684-redundant-connection.rs)
| ❌
| [✔️](swift%2F0684-redundant-connection.swift)
| [✔️](typescript%2F0684-redundant-connection.ts)
+[0323 - Number of Connected Components In An Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/) | ❌
| ❌
| [✔️](cpp%2F0323-number-of-connected-components-in-an-undirected-graph.cpp)
| [✔️](csharp%2F0323-number-of-connected-components-in-an-undirected-graph.cs)
| ❌
| [✔️](go%2F0323-number-of-connected-components-in-an-undirected-graph.go)
| ❌
| [✔️](java%2F0323-number-of-connected-components-in-an-undirected-graph.java)
| [✔️](javascript%2F0323-number-of-connected-components-in-an-undirected-graph.js)
| [✔️](kotlin%2F0323-number-of-connected-components-in-an-undirected-graph.kt)
| [✔️](python%2F0323-number-of-connected-components-in-an-undirected-graph.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0323-number-of-connected-components-in-an-undirected-graph.swift)
| ❌
+[0261 - Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/) | ❌
| ❌
| [✔️](cpp%2F0261-graph-valid-tree.cpp)
| [✔️](csharp%2F0261-graph-valid-tree.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0261-graph-valid-tree.java)
| [✔️](javascript%2F0261-graph-valid-tree.js)
| [✔️](kotlin%2F0261-graph-valid-tree.kt)
| [✔️](python%2F0261-graph-valid-tree.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0261-graph-valid-tree.swift)
| [✔️](typescript%2F0261-graph-valid-tree.ts)
+[0721 - Accounts Merge](https://leetcode.com/problems/accounts-merge/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0721-accounts-merge.java)
| ❌
| [✔️](kotlin%2F0721-accounts-merge.kt)
| [✔️](python%2F0721-accounts-merge.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0721-accounts-merge.swift)
| ❌
+[2359 - Find Closest Node to Given Two Nodes](https://leetcode.com/problems/find-closest-node-to-given-two-nodes/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2359-find-closest-node-to-given-two-nodes.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1162 - As Far from Land as Possible](https://leetcode.com/problems/as-far-from-land-as-possible/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1162-as-far-from-land-as-possible.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1129 - Shortest Path with Alternating Colors](https://leetcode.com/problems/shortest-path-with-alternating-colors/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1129-shortest-path-with-alternating-colors.java)
| ❌
| [✔️](kotlin%2F1129-shortest-path-with-alternating-colors.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2477 - Minimum Fuel Cost to Report to the Capital](https://leetcode.com/problems/minimum-fuel-cost-to-report-to-the-capital/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F2477-minimum-fuel-cost-to-report-to-the-capital.java)
| ❌
| [✔️](kotlin%2F2477-minimum-fuel-cost-to-report-to-the-capital.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2492 - Minimum Score of a Path Between Two Cities](https://leetcode.com/problems/minimum-score-of-a-path-between-two-cities/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2492-minimum-score-of-a-path-between-two-cities.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1254 - Number of Closed Islands](https://leetcode.com/problems/number-of-closed-islands/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1254-number-of-closed-islands.kt)
| [✔️](python%2F1254-number-of-closed-islands.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1020 - Number of Enclaves](https://leetcode.com/problems/number-of-enclaves/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1020-number-of-enclaves.java)
| ❌
| [✔️](kotlin%2F1020-number-of-enclaves.kt)
| [✔️](python%2F1020-number-of-enclaves.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1557 - Minimum Number of Vertices to Reach all Nodes](https://leetcode.com/problems/minimum-number-of-vertices-to-reach-all-nodes/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1557-minimum-number-of-vertices-to-reach-all-nodes.java)
| ❌
| [✔️](kotlin%2F1557-minimum-number-of-vertices-to-reach-all-nodes.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0785 - Is Graph Bipartite?](https://leetcode.com/problems/is-graph-bipartite/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0785-is-graph-bipartite.java)
| ❌
| [✔️](kotlin%2F0785-is-graph-bipartite.kt)
| [✔️](python%2F0785-is-graph-bipartite.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0399 - Evaluate Division](https://leetcode.com/problems/evaluate-division/) | ❌
| ❌
| [✔️](cpp%2F0399-evaluate-division.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0399-evaluate-division.java)
| ❌
| [✔️](kotlin%2F0399-evaluate-division.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2101 - Detonate the Maximum Bombs](https://leetcode.com/problems/detonate-the-maximum-bombs/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2101-detonate-the-maximum-bombs.kt)
| [✔️](python%2F2101-detonate-the-maximum-bombs.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1857 - Largest Color Value in a Directed Graph](https://leetcode.com/problems/largest-color-value-in-a-directed-graph/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1857-largest-color-value-in-a-directed-graph.kt)
| ❌
| ❌
| [✔️](rust%2F1857-largest-color-value-in-a-directed-graph.rs)
| ❌
| ❌
| ❌
+[1553 - Minimum Number of Days to Eat N Oranges](https://leetcode.com/problems/minimum-number-of-days-to-eat-n-oranges/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1553-minimum-number-of-days-to-eat-n-oranges.java)
| ❌
| [✔️](kotlin%2F1553-minimum-number-of-days-to-eat-n-oranges.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0127 - Word Ladder](https://leetcode.com/problems/word-ladder/) | ❌
| ❌
| [✔️](cpp%2F0127-word-ladder.cpp)
| [✔️](csharp%2F0127-word-ladder.cs)
| ❌
| [✔️](go%2F0127-word-ladder.go)
| ❌
| [✔️](java%2F0127-word-ladder.java)
| [✔️](javascript%2F0127-word-ladder.js)
| [✔️](kotlin%2F0127-word-ladder.kt)
| [✔️](python%2F0127-word-ladder.py)
| ❌
| [✔️](rust%2F0127-word-ladder.rs)
| ❌
| [✔️](swift%2F0127-word-ladder.swift)
| [✔️](typescript%2F0127-word-ladder.ts)
### Advanced Graphs
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0332 - Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/) | ❌
| [✔️](cpp%2F0332-reconstruct-itinerary.cpp)
| [✔️](csharp%2F0332-reconstruct-itinerary.cs)
| ❌
| [✔️](go%2F0332-reconstruct-itinerary.go)
| [✔️](java%2F0332-reconstruct-itinerary.java)
| [✔️](javascript%2F0332-reconstruct-itinerary.js)
| [✔️](kotlin%2F0332-reconstruct-itinerary.kt)
| [✔️](python%2F0332-reconstruct-itinerary.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1584 - Min Cost to Connect All Points](https://leetcode.com/problems/min-cost-to-connect-all-points/) | ❌
| [✔️](cpp%2F1584-Min-Cost-To-Connect-All-Points.cpp)
| [✔️](csharp%2F1584-Min-Cost-to-Connect-All-Points.cs)
| ❌
| [✔️](go%2F1584-min-cost-to-connect-all-points.go)
| [✔️](java%2F1584-Min-Cost-to-Connect-All-Points.java)
| [✔️](javascript%2F1584-Min-Cost-to-Connect-all-Points.js)
| [✔️](kotlin%2F1584-min-cost-to-connect-all-points.kt)
| [✔️](python%2F1584-min-cost-to-connect-all-points.py)
| [✔️](ruby%2F1584-Min-Cost-to-Connect-All-Points.rb)
| ❌
| ❌
| [✔️](swift%2F1584-Min-Cost-to-Connect-All-Points.swift)
| ❌
-[0743 - Network Delay Time](https://leetcode.com/problems/network-delay-time/) | ❌
| [✔️](cpp%2F0743-network-delay-time.cpp)
| [✔️](csharp%2F0743-network-delay-time.cs)
| ❌
| [✔️](go%2F0743-network-delay-time.go)
| [✔️](java%2F0743-network-delay-time.java)
| [✔️](javascript%2F0743-network-delay-time.js)
| [✔️](kotlin%2F0743-network-delay-time.kt)
| [✔️](python%2F0743-network-delay-time.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1514 - Path With Maximum Probability](https://leetcode.com/problems/path-with-maximum-probability/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1514-Path-With-Maximum-Probability.js)
| ❌
| [✔️](python%2F1514-path-with-maximum-probability.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0778 - Swim In Rising Water](https://leetcode.com/problems/swim-in-rising-water/) | ❌
| [✔️](cpp%2F0778-swim-in-rising-water.cpp)
| [✔️](csharp%2F0778-swim-in-rising-water.cs)
| ❌
| [✔️](go%2F0778-swim-in-rising-water.go)
| [✔️](java%2F0778-swim-in-rising-water.java)
| [✔️](javascript%2F0778-swim-in-rising-water.js)
| [✔️](kotlin%2F0778-swim-in-rising-water.kt)
| [✔️](python%2F0778-swim-in-rising-water.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0269 - Alien Dictionary](https://leetcode.com/problems/alien-dictionary/) | ❌
| [✔️](cpp%2F0269-alien-dictionary.cpp)
| [✔️](csharp%2F0269-alien-dictionary.cs)
| ❌
| ❌
| [✔️](java%2F0269-alien-dictionary.java)
| [✔️](javascript%2F0269-alien-dictionary.js)
| ❌
| [✔️](python%2F0269-alien-dictionary.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0787 - Cheapest Flights Within K Stops](https://leetcode.com/problems/cheapest-flights-within-k-stops/) | ❌
| [✔️](cpp%2F0787-cheapest-flights-within-k-stops.cpp)
| [✔️](csharp%2F0787-cheapest-flights-within-k-stops.cs)
| ❌
| [✔️](go%2F0787-cheapest-flights-within-k-stops.go)
| [✔️](java%2F0787-cheapest-flights-within-k-stops.java)
| [✔️](javascript%2F0787-cheapest-flights-within-k-stops.js)
| [✔️](kotlin%2F0787-cheapest-flights-within-k-stops.kt)
| [✔️](python%2F0787-cheapest-flights-within-k-stops.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0787-cheapest-flights-within-k-stops.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[1631 - Path with Minimum Effort](https://leetcode.com/problems/path-with-minimum-effort/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1631-path-with-minimum-effort.kt)
| [✔️](python%2F1631-path-with-minimum-effort.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0332 - Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/) | ❌
| [✔️](c%2F0332-reconstruct-itinerary.c)
| [✔️](cpp%2F0332-reconstruct-itinerary.cpp)
| [✔️](csharp%2F0332-reconstruct-itinerary.cs)
| ❌
| [✔️](go%2F0332-reconstruct-itinerary.go)
| ❌
| [✔️](java%2F0332-reconstruct-itinerary.java)
| [✔️](javascript%2F0332-reconstruct-itinerary.js)
| [✔️](kotlin%2F0332-reconstruct-itinerary.kt)
| [✔️](python%2F0332-reconstruct-itinerary.py)
| ❌
| [✔️](rust%2F0332-reconstruct-itinerary.rs)
| ❌
| [✔️](swift%2F0332-reconstruct-itinerary.swift)
| ❌
+[1584 - Min Cost to Connect All Points](https://leetcode.com/problems/min-cost-to-connect-all-points/) | ❌
| ❌
| [✔️](cpp%2F1584-Min-Cost-To-Connect-All-Points.cpp)
| [✔️](csharp%2F1584-Min-Cost-to-Connect-All-Points.cs)
| ❌
| [✔️](go%2F1584-min-cost-to-connect-all-points.go)
| ❌
| [✔️](java%2F1584-Min-Cost-to-Connect-All-Points.java)
| [✔️](javascript%2F1584-Min-Cost-to-Connect-all-Points.js)
| [✔️](kotlin%2F1584-min-cost-to-connect-all-points.kt)
| [✔️](python%2F1584-min-cost-to-connect-all-points.py)
| [✔️](ruby%2F1584-Min-Cost-to-Connect-All-Points.rb)
| ❌
| ❌
| [✔️](swift%2F1584-Min-Cost-to-Connect-All-Points.swift)
| [✔️](typescript%2F1584-min-cost-to-connect-all-points.ts)
+[0743 - Network Delay Time](https://leetcode.com/problems/network-delay-time/) | ❌
| ❌
| [✔️](cpp%2F0743-network-delay-time.cpp)
| [✔️](csharp%2F0743-network-delay-time.cs)
| ❌
| [✔️](go%2F0743-network-delay-time.go)
| ❌
| [✔️](java%2F0743-network-delay-time.java)
| [✔️](javascript%2F0743-network-delay-time.js)
| [✔️](kotlin%2F0743-network-delay-time.kt)
| [✔️](python%2F0743-network-delay-time.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0743-network-delay-time.swift)
| [✔️](typescript%2F0743-network-delay-time.ts)
+[1514 - Path with Maximum Probability](https://leetcode.com/problems/path-with-maximum-probability/) | ❌
| ❌
| [✔️](cpp%2F1514-path-with-maximum-probability.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1514-path-with-maximum-probability.java)
| [✔️](javascript%2F1514-path-with-maximum-probability.js)
| [✔️](kotlin%2F1514-path-with-maximum-probability.kt)
| [✔️](python%2F1514-path-with-maximum-probability.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1514-path-with-maximum-probability.swift)
| [✔️](typescript%2F1514-path-with-maximum-probability.ts)
+[0778 - Swim In Rising Water](https://leetcode.com/problems/swim-in-rising-water/) | ❌
| ❌
| [✔️](cpp%2F0778-swim-in-rising-water.cpp)
| [✔️](csharp%2F0778-swim-in-rising-water.cs)
| ❌
| [✔️](go%2F0778-swim-in-rising-water.go)
| ❌
| [✔️](java%2F0778-swim-in-rising-water.java)
| [✔️](javascript%2F0778-swim-in-rising-water.js)
| [✔️](kotlin%2F0778-swim-in-rising-water.kt)
| [✔️](python%2F0778-swim-in-rising-water.py)
| ❌
| [✔️](rust%2F0778-swim-in-rising-water.rs)
| ❌
| [✔️](swift%2F0778-swim-in-rising-water.swift)
| [✔️](typescript%2F0778-swim-in-rising-water.ts)
+[0269 - Alien Dictionary](https://leetcode.com/problems/alien-dictionary/) | ❌
| ❌
| [✔️](cpp%2F0269-alien-dictionary.cpp)
| [✔️](csharp%2F0269-alien-dictionary.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0269-alien-dictionary.java)
| [✔️](javascript%2F0269-alien-dictionary.js)
| ❌
| [✔️](python%2F0269-alien-dictionary.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0269-alien-dictionary.swift)
| ❌
+[0787 - Cheapest Flights Within K Stops](https://leetcode.com/problems/cheapest-flights-within-k-stops/) | ❌
| ❌
| [✔️](cpp%2F0787-cheapest-flights-within-k-stops.cpp)
| [✔️](csharp%2F0787-cheapest-flights-within-k-stops.cs)
| ❌
| [✔️](go%2F0787-cheapest-flights-within-k-stops.go)
| ❌
| [✔️](java%2F0787-cheapest-flights-within-k-stops.java)
| [✔️](javascript%2F0787-cheapest-flights-within-k-stops.js)
| [✔️](kotlin%2F0787-cheapest-flights-within-k-stops.kt)
| [✔️](python%2F0787-cheapest-flights-within-k-stops.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0787-cheapest-flights-within-k-stops.swift)
| [✔️](typescript%2F0787-cheapest-flights-within-k-stops.ts)
+[2421 - Number of Good Paths](https://leetcode.com/problems/number-of-good-paths/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F2421-number-of-good-paths.go)
| ❌
| ❌
| [✔️](javascript%2F2421-number-of-good-paths.js)
| [✔️](kotlin%2F2421-number-of-good-paths.kt)
| ❌
| ❌
| [✔️](rust%2F2421-number-of-good-paths.rs)
| ❌
| ❌
| [✔️](typescript%2F2421-number-of-good-paths.ts)
+[1579 - Remove Max Number of Edges to Keep Graph Fully Traversable](https://leetcode.com/problems/remove-max-number-of-edges-to-keep-graph-fully-traversable/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1579-remove-max-number-of-edges-to-keep-graph-fully-traversable.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1489 - Find Critical and Pseudo Critical Edges in Minimum Spanning Tree](https://leetcode.com/problems/find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1489-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree.kt)
| [✔️](python%2F1489-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1489-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree.swift)
| [✔️](typescript%2F1489-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree.ts)
### 1-D Dynamic Programming
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0070 - Climbing Stairs](https://leetcode.com/problems/climbing-stairs/) | [✔️](c%2F0070-climbing-stairs.c)
| [✔️](cpp%2F0070-climbing-stairs.cpp)
| [✔️](csharp%2F0070-climbing-stairs.cs)
| ❌
| [✔️](go%2F0070-climbing-stairs.go)
| [✔️](java%2F0070-climbing-stairs.java)
| [✔️](javascript%2F0070-climbing-stairs.js)
| [✔️](kotlin%2F0070-climbing-stairs.kt)
| [✔️](python%2F0070-climbing-stairs.py)
| [✔️](ruby%2F0070-climbing-stairs.rb)
| [✔️](rust%2F0070-climbing-stairs.rs)
| ❌
| [✔️](swift%2F0070-climbing-stairs.swift)
| [✔️](typescript%2F0070-climbing-stairs.ts)
-[0746 - Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/) | [✔️](c%2F0746-min-cost-climbing-stairs.c)
| [✔️](cpp%2F0746-min-cost-climbing-stairs.cpp)
| [✔️](csharp%2F0746-min-cost-climbing-stairs.cs)
| ❌
| [✔️](go%2F0746-min-cost-climbing-stairs.go)
| [✔️](java%2F0746-min-cost-climbing-stairs.java)
| [✔️](javascript%2F0746-min-cost-climbing-stairs.js)
| [✔️](kotlin%2F0746-min-cost-climbing-stairs.kt)
| [✔️](python%2F0746-min-cost-climbing-stairs.py)
| [✔️](ruby%2F0746-min-cost-climbing-stairs.rb)
| [✔️](rust%2F0746-min-cost-climbing-stairs.rs)
| [✔️](scala%2F0746-min-cost-climbing-stairs.scala)
| [✔️](swift%2F0746-min-cost-climbing-stairs.swift)
| [✔️](typescript%2F0746-min-cost-climbing-stairs.ts)
-[0198 - House Robber](https://leetcode.com/problems/house-robber/) | [✔️](c%2F0198-house-robber.c)
| [✔️](cpp%2F0198-house-robber.cpp)
| [✔️](csharp%2F0198-house-robber.cs)
| ❌
| [✔️](go%2F0198-house-robber.go)
| [✔️](java%2F0198-house-robber.java)
| [✔️](javascript%2F0198-house-robber.js)
| [✔️](kotlin%2F0198-house-robber.kt)
| [✔️](python%2F0198-house-robber.py)
| [✔️](ruby%2F0198-house-robber.rb)
| [✔️](rust%2F0198-house-robber.rs)
| [✔️](scala%2F0198-house-robber.scala)
| [✔️](swift%2F0198-house-robber.swift)
| [✔️](typescript%2F0198-house-robber.ts)
-[0213 - House Robber II](https://leetcode.com/problems/house-robber-ii/) | [✔️](c%2F0213-house-robber-ii.c)
| [✔️](cpp%2F0213-house-robber-ii.cpp)
| [✔️](csharp%2F0213-house-robber-ii.cs)
| ❌
| [✔️](go%2F0213-house-robber-ii.go)
| [✔️](java%2F0213-house-robber-ii.java)
| [✔️](javascript%2F0213-house-robber-ii.js)
| [✔️](kotlin%2F0213-house-robber-ii.kt)
| [✔️](python%2F0213-house-robber-ii.py)
| [✔️](ruby%2F0213-house-robber-ii.rb)
| [✔️](rust%2F0213-house-robber-ii.rs)
| [✔️](scala%2F0213-house-robber-ii.scala)
| [✔️](swift%2F0213-house-robber-ii.swift)
| [✔️](typescript%2F0213-house-robber-ii.ts)
-[0005 - Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/) | [✔️](c%2F0005-longest-palindromic-substring.c)
| [✔️](cpp%2F0005-longest-palindromic-substring.cpp)
| [✔️](csharp%2F0005-longest-palindromic-substring.cs)
| ❌
| [✔️](go%2F0005-Longest-Palindromic-Substring.go)
| [✔️](java%2F0005-longest-palindromic-substring.java)
| [✔️](javascript%2F0005-longest-palindromic-substring.js)
| [✔️](kotlin%2F0005-longest-palindromic-substring.kt)
| [✔️](python%2F0005-longest-palindromic-substring.py)
| ❌
| [✔️](rust%2F0005-longest-palindromic-substring.rs)
| ❌
| ❌
| [✔️](typescript%2F0005-longest-palindromic-substring.ts)
-[0647 - Palindromic Substrings](https://leetcode.com/problems/palindromic-substrings/) | [✔️](c%2F0647-palindromic-substrings.c)
| [✔️](cpp%2F0647-palindromic-substrings.cpp)
| [✔️](csharp%2F0647-palindromic-substrings.cs)
| ❌
| [✔️](go%2F0647-palindromic-substrings.go)
| [✔️](java%2F0647-palindromic-substrings.java)
| [✔️](javascript%2F0647-palindromic-substrings.js)
| [✔️](kotlin%2F0647-palindromic-substrings.kt)
| [✔️](python%2F0647-palindromic-substrings.py)
| ❌
| [✔️](rust%2F0647-palindromic-substrings.rs)
| ❌
| ❌
| [✔️](typescript%2F0647-palindromic-substrings.ts)
-[0091 - Decode Ways](https://leetcode.com/problems/decode-ways/) | [✔️](c%2F0091-decode-ways.c)
| [✔️](cpp%2F0091-decode-ways.cpp)
| [✔️](csharp%2F0091-decode-ways.cs)
| ❌
| [✔️](go%2F0091-decode-ways.go)
| [✔️](java%2F0091-decode-ways.java)
| [✔️](javascript%2F0091-decode-ways.js)
| [✔️](kotlin%2F0091-decode-ways.kt)
| [✔️](python%2F0091-decode-ways.py)
| ❌
| ❌
| [✔️](scala%2F0091-decode-ways.scala)
| ❌
| [✔️](typescript%2F0091-decode-ways.ts)
-[0322 - Coin Change](https://leetcode.com/problems/coin-change/) | [✔️](c%2F0322-coin-change.c)
| [✔️](cpp%2F0322-coin-change.cpp)
| [✔️](csharp%2F0322-coin-change.cs)
| ❌
| [✔️](go%2F0322-coin-change.go)
| [✔️](java%2F0322-coin-change.java)
| [✔️](javascript%2F0322-coin-change.js)
| [✔️](kotlin%2F0322-coin-change.kt)
| [✔️](python%2F0322-coin-change.py)
| ❌
| [✔️](rust%2F0322-coin-change.rs)
| [✔️](scala%2F0322-coin-change.scala)
| ❌
| [✔️](typescript%2F0322-coin-change.ts)
-[0152 - Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/) | [✔️](c%2F0152-maximum-product-subarray.c)
| [✔️](cpp%2F0152-maximum-product-subarray.cpp)
| [✔️](csharp%2F0152-maximum-product-subarray.cs)
| ❌
| [✔️](go%2F0152-maximum-product-subarray.go)
| [✔️](java%2F0152-maximum-product-subarray.java)
| [✔️](javascript%2F0152-maximum-product-subarray.js)
| [✔️](kotlin%2F0152-maximum-product-subarray.kt)
| [✔️](python%2F0152-maximum-product-subarray.py)
| [✔️](ruby%2F0152-maximum-product-subarray.rb)
| [✔️](rust%2F0152-maximum-product-subarray.rs)
| ❌
| [✔️](swift%2F0152-maximum-product-subarray.swift)
| [✔️](typescript%2F0152-maximum-product-subarray.ts)
-[0139 - Word Break](https://leetcode.com/problems/word-break/) | ❌
| [✔️](cpp%2F0139-word-break.cpp)
| [✔️](csharp%2F0139-word-break.cs)
| ❌
| [✔️](go%2F0139-word-break.go)
| [✔️](java%2F0139-word-break.java)
| [✔️](javascript%2F0139-word-break.js)
| [✔️](kotlin%2F0139-word-break.kt)
| [✔️](python%2F0139-word-break.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0139-word-break.ts)
-[0300 - Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/) | [✔️](c%2F0300-longest-increasing-subsequence.c)
| [✔️](cpp%2F0300-longest-increasing-subsequence.cpp)
| [✔️](csharp%2F0300-longest-increasing-subsequence.cs)
| ❌
| [✔️](go%2F0300-longest-increasing-subsequence.go)
| [✔️](java%2F0300-longest-increasing-subsequence.java)
| [✔️](javascript%2F0300-longest-increasing-subsequence.js)
| [✔️](kotlin%2F0300-longest-increasing-subsequence.kt)
| [✔️](python%2F0300-longest-increasing-subsequence.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0300-longest-increasing-subsequence.ts)
-[0416 - Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/) | ❌
| [✔️](cpp%2F0416-partition-equal-subset-sum.cpp)
| [✔️](csharp%2F0416-partition-equal-subset-sum.cs)
| ❌
| [✔️](go%2F0416-partition-equal-subset-sum.go)
| [✔️](java%2F0416-partition-equal-subset-sum.java)
| [✔️](javascript%2F0416-partition-equal-subset-sum.js)
| [✔️](kotlin%2F0416-partition-equal-subset-sum.kt)
| [✔️](python%2F0416-partition-equal-subset-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0120 - Triangle](https://leetcode.com/problems/triangle/) | ❌
| [✔️](cpp%2F0120-triangle.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0120-triangle.java)
| ❌
| ❌
| [✔️](python%2F0120-triangle.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0740 - Delete And Earn](https://leetcode.com/problems/delete-and-earn/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0740-delete-and-earn.go)
| ❌
| ❌
| ❌
| [✔️](python%2F0740-delete-and-earn.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0256 - Paint House](https://leetcode.com/problems/paint-house/) | ❌
| ❌
| [✔️](csharp%2F0256-paint-house.cs)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0377 - Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/) | ❌
| [✔️](cpp%2F0377-combination-sum-iv.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0377-combination-sum-iv.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0279 - Perfect Squares](https://leetcode.com/problems/perfect-squares/) | ❌
| [✔️](cpp%2F0279-Perfect-Squares.cpp)
| ❌
| ❌
| [✔️](go%2F0279-perfect-squares.go)
| [✔️](java%2F0279-perfect-squares.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1856 - Maximum Subarray Min Product](https://leetcode.com/problems/maximum-subarray-min-product/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0983 - Minimum Cost For Tickets](https://leetcode.com/problems/minimum-cost-for-tickets/) | ❌
| [✔️](cpp%2F0983-minimum-cost-for-tickets.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0343 - Integer Break](https://leetcode.com/problems/integer-break/) | ❌
| [✔️](cpp%2F0343-integer-break.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0673 - Number of Longest Increasing Subsequence](https://leetcode.com/problems/number-of-longest-increasing-subsequence/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](python%2F0673-number-of-longest-increasing-subsequence.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0691 - Stickers to Spell Word](https://leetcode.com/problems/stickers-to-spell-word/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0070 - Climbing Stairs](https://leetcode.com/problems/climbing-stairs/) | ❌
| [✔️](c%2F0070-climbing-stairs.c)
| [✔️](cpp%2F0070-climbing-stairs.cpp)
| [✔️](csharp%2F0070-climbing-stairs.cs)
| [✔️](dart%2F0070-climbing-stairs.dart)
| [✔️](go%2F0070-climbing-stairs.go)
| ❌
| [✔️](java%2F0070-climbing-stairs.java)
| [✔️](javascript%2F0070-climbing-stairs.js)
| [✔️](kotlin%2F0070-climbing-stairs.kt)
| [✔️](python%2F0070-climbing-stairs.py)
| [✔️](ruby%2F0070-climbing-stairs.rb)
| [✔️](rust%2F0070-climbing-stairs.rs)
| [✔️](scala%2F0070-climbing-stairs.scala)
| [✔️](swift%2F0070-climbing-stairs.swift)
| [✔️](typescript%2F0070-climbing-stairs.ts)
+[0746 - Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/) | ❌
| [✔️](c%2F0746-min-cost-climbing-stairs.c)
| [✔️](cpp%2F0746-min-cost-climbing-stairs.cpp)
| [✔️](csharp%2F0746-min-cost-climbing-stairs.cs)
| [✔️](dart%2F0746-min-cost-climbing-stairs.dart)
| [✔️](go%2F0746-min-cost-climbing-stairs.go)
| ❌
| [✔️](java%2F0746-min-cost-climbing-stairs.java)
| [✔️](javascript%2F0746-min-cost-climbing-stairs.js)
| [✔️](kotlin%2F0746-min-cost-climbing-stairs.kt)
| [✔️](python%2F0746-min-cost-climbing-stairs.py)
| [✔️](ruby%2F0746-min-cost-climbing-stairs.rb)
| [✔️](rust%2F0746-min-cost-climbing-stairs.rs)
| [✔️](scala%2F0746-min-cost-climbing-stairs.scala)
| [✔️](swift%2F0746-min-cost-climbing-stairs.swift)
| [✔️](typescript%2F0746-min-cost-climbing-stairs.ts)
+[0198 - House Robber](https://leetcode.com/problems/house-robber/) | ❌
| [✔️](c%2F0198-house-robber.c)
| [✔️](cpp%2F0198-house-robber.cpp)
| [✔️](csharp%2F0198-house-robber.cs)
| ❌
| [✔️](go%2F0198-house-robber.go)
| ❌
| [✔️](java%2F0198-house-robber.java)
| [✔️](javascript%2F0198-house-robber.js)
| [✔️](kotlin%2F0198-house-robber.kt)
| [✔️](python%2F0198-house-robber.py)
| [✔️](ruby%2F0198-house-robber.rb)
| [✔️](rust%2F0198-house-robber.rs)
| [✔️](scala%2F0198-house-robber.scala)
| [✔️](swift%2F0198-house-robber.swift)
| [✔️](typescript%2F0198-house-robber.ts)
+[0213 - House Robber II](https://leetcode.com/problems/house-robber-ii/) | ❌
| [✔️](c%2F0213-house-robber-ii.c)
| [✔️](cpp%2F0213-house-robber-ii.cpp)
| [✔️](csharp%2F0213-house-robber-ii.cs)
| ❌
| [✔️](go%2F0213-house-robber-ii.go)
| ❌
| [✔️](java%2F0213-house-robber-ii.java)
| [✔️](javascript%2F0213-house-robber-ii.js)
| [✔️](kotlin%2F0213-house-robber-ii.kt)
| [✔️](python%2F0213-house-robber-ii.py)
| [✔️](ruby%2F0213-house-robber-ii.rb)
| [✔️](rust%2F0213-house-robber-ii.rs)
| [✔️](scala%2F0213-house-robber-ii.scala)
| [✔️](swift%2F0213-house-robber-ii.swift)
| [✔️](typescript%2F0213-house-robber-ii.ts)
+[0005 - Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/) | ❌
| [✔️](c%2F0005-longest-palindromic-substring.c)
| [✔️](cpp%2F0005-longest-palindromic-substring.cpp)
| [✔️](csharp%2F0005-longest-palindromic-substring.cs)
| ❌
| [✔️](go%2F0005-Longest-Palindromic-Substring.go)
| ❌
| [✔️](java%2F0005-longest-palindromic-substring.java)
| [✔️](javascript%2F0005-longest-palindromic-substring.js)
| [✔️](kotlin%2F0005-longest-palindromic-substring.kt)
| [✔️](python%2F0005-longest-palindromic-substring.py)
| ❌
| [✔️](rust%2F0005-longest-palindromic-substring.rs)
| ❌
| [✔️](swift%2F0005-longest-palindromic-substring.swift)
| [✔️](typescript%2F0005-longest-palindromic-substring.ts)
+[0647 - Palindromic Substrings](https://leetcode.com/problems/palindromic-substrings/) | ❌
| [✔️](c%2F0647-palindromic-substrings.c)
| [✔️](cpp%2F0647-palindromic-substrings.cpp)
| [✔️](csharp%2F0647-palindromic-substrings.cs)
| ❌
| [✔️](go%2F0647-palindromic-substrings.go)
| ❌
| [✔️](java%2F0647-palindromic-substrings.java)
| [✔️](javascript%2F0647-palindromic-substrings.js)
| [✔️](kotlin%2F0647-palindromic-substrings.kt)
| [✔️](python%2F0647-palindromic-substrings.py)
| ❌
| [✔️](rust%2F0647-palindromic-substrings.rs)
| ❌
| [✔️](swift%2F0647-palindromic-substrings.swift)
| [✔️](typescript%2F0647-palindromic-substrings.ts)
+[0091 - Decode Ways](https://leetcode.com/problems/decode-ways/) | ❌
| [✔️](c%2F0091-decode-ways.c)
| [✔️](cpp%2F0091-decode-ways.cpp)
| [✔️](csharp%2F0091-decode-ways.cs)
| ❌
| [✔️](go%2F0091-decode-ways.go)
| ❌
| [✔️](java%2F0091-decode-ways.java)
| [✔️](javascript%2F0091-decode-ways.js)
| [✔️](kotlin%2F0091-decode-ways.kt)
| [✔️](python%2F0091-decode-ways.py)
| ❌
| [✔️](rust%2F0091-decode-ways.rs)
| [✔️](scala%2F0091-decode-ways.scala)
| [✔️](swift%2F0091-decode-ways.swift)
| [✔️](typescript%2F0091-decode-ways.ts)
+[0322 - Coin Change](https://leetcode.com/problems/coin-change/) | ❌
| [✔️](c%2F0322-coin-change.c)
| [✔️](cpp%2F0322-coin-change.cpp)
| [✔️](csharp%2F0322-coin-change.cs)
| ❌
| [✔️](go%2F0322-coin-change.go)
| ❌
| [✔️](java%2F0322-coin-change.java)
| [✔️](javascript%2F0322-coin-change.js)
| [✔️](kotlin%2F0322-coin-change.kt)
| [✔️](python%2F0322-coin-change.py)
| ❌
| [✔️](rust%2F0322-coin-change.rs)
| [✔️](scala%2F0322-coin-change.scala)
| [✔️](swift%2F0322-coin-change.swift)
| [✔️](typescript%2F0322-coin-change.ts)
+[0152 - Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/) | ❌
| [✔️](c%2F0152-maximum-product-subarray.c)
| [✔️](cpp%2F0152-maximum-product-subarray.cpp)
| [✔️](csharp%2F0152-maximum-product-subarray.cs)
| ❌
| [✔️](go%2F0152-maximum-product-subarray.go)
| ❌
| [✔️](java%2F0152-maximum-product-subarray.java)
| [✔️](javascript%2F0152-maximum-product-subarray.js)
| [✔️](kotlin%2F0152-maximum-product-subarray.kt)
| [✔️](python%2F0152-maximum-product-subarray.py)
| [✔️](ruby%2F0152-maximum-product-subarray.rb)
| [✔️](rust%2F0152-maximum-product-subarray.rs)
| ❌
| [✔️](swift%2F0152-maximum-product-subarray.swift)
| [✔️](typescript%2F0152-maximum-product-subarray.ts)
+[0139 - Word Break](https://leetcode.com/problems/word-break/) | ❌
| ❌
| [✔️](cpp%2F0139-word-break.cpp)
| [✔️](csharp%2F0139-word-break.cs)
| ❌
| [✔️](go%2F0139-word-break.go)
| ❌
| [✔️](java%2F0139-word-break.java)
| [✔️](javascript%2F0139-word-break.js)
| [✔️](kotlin%2F0139-word-break.kt)
| [✔️](python%2F0139-word-break.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0139-word-break.swift)
| [✔️](typescript%2F0139-word-break.ts)
+[0300 - Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/) | ❌
| [✔️](c%2F0300-longest-increasing-subsequence.c)
| [✔️](cpp%2F0300-longest-increasing-subsequence.cpp)
| [✔️](csharp%2F0300-longest-increasing-subsequence.cs)
| ❌
| [✔️](go%2F0300-longest-increasing-subsequence.go)
| ❌
| [✔️](java%2F0300-longest-increasing-subsequence.java)
| [✔️](javascript%2F0300-longest-increasing-subsequence.js)
| [✔️](kotlin%2F0300-longest-increasing-subsequence.kt)
| [✔️](python%2F0300-longest-increasing-subsequence.py)
| ❌
| [✔️](rust%2F0300-longest-increasing-subsequence.rs)
| ❌
| [✔️](swift%2F0300-longest-increasing-subsequence.swift)
| [✔️](typescript%2F0300-longest-increasing-subsequence.ts)
+[0416 - Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/) | ❌
| [✔️](c%2F0416-partition-equal-subset-sum.c)
| [✔️](cpp%2F0416-partition-equal-subset-sum.cpp)
| [✔️](csharp%2F0416-partition-equal-subset-sum.cs)
| ❌
| [✔️](go%2F0416-partition-equal-subset-sum.go)
| ❌
| [✔️](java%2F0416-partition-equal-subset-sum.java)
| [✔️](javascript%2F0416-partition-equal-subset-sum.js)
| [✔️](kotlin%2F0416-partition-equal-subset-sum.kt)
| [✔️](python%2F0416-partition-equal-subset-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0416-partition-equal-subset-sum.swift)
| ❌
+[0120 - Triangle](https://leetcode.com/problems/triangle/) | ❌
| [✔️](c%2F0120-triangle.c)
| [✔️](cpp%2F0120-triangle.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0120-triangle.java)
| ❌
| [✔️](kotlin%2F0120-triangle.kt)
| [✔️](python%2F0120-triangle.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0740 - Delete And Earn](https://leetcode.com/problems/delete-and-earn/) | ❌
| [✔️](c%2F0740-delete-and-earn.c)
| [✔️](cpp%2F0740-delete-and-earn.cpp)
| ❌
| ❌
| [✔️](go%2F0740-delete-and-earn.go)
| ❌
| [✔️](java%2F0740-delete-and-earn.java)
| ❌
| [✔️](kotlin%2F0740-delete-and-earn.kt)
| [✔️](python%2F0740-delete-and-earn.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0256 - Paint House](https://leetcode.com/problems/paint-house/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0256-paint-house.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0256-paint-house.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0256-paint-house.ts)
+[0377 - Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/) | ❌
| [✔️](c%2F0377-combination-sum-iv.c)
| [✔️](cpp%2F0377-combination-sum-iv.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0377-combination-sum-iv.java)
| ❌
| [✔️](kotlin%2F0377-combination-sum-iv.kt)
| [✔️](python%2F0377-combination-sum-iv.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0279 - Perfect Squares](https://leetcode.com/problems/perfect-squares/) | ❌
| [✔️](c%2F0279-perfect-squares.c)
| [✔️](cpp%2F0279-perfect-squares.cpp)
| ❌
| ❌
| [✔️](go%2F0279-perfect-squares.go)
| ❌
| [✔️](java%2F0279-perfect-squares.java)
| ❌
| [✔️](kotlin%2F0279-perfect-squares.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2369 - Check if There is a Valid Partition For The Array](https://leetcode.com/problems/check-if-there-is-a-valid-partition-for-the-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2369-check-if-there-is-a-valid-partition-for-the-array.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1856 - Maximum Subarray Min Product](https://leetcode.com/problems/maximum-subarray-min-product/) | ❌
| [✔️](c%2F1856-maximum-subarray-min-product.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1856-maximum-subarray-min-product.java)
| ❌
| [✔️](kotlin%2F1856-maximum-subarray-min-product.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0983 - Minimum Cost For Tickets](https://leetcode.com/problems/minimum-cost-for-tickets/) | ❌
| [✔️](c%2F0983-minimum-cost-for-tickets.c)
| [✔️](cpp%2F0983-minimum-cost-for-tickets.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0983-minimum-cost-for-tickets.kt)
| ❌
| ❌
| ❌
| ❌
| [✔️](swift%2F0983-minimum-cost-for-tickets.swift)
| [✔️](typescript%2F0983-minimum-cost-for-tickets.ts)
+[0343 - Integer Break](https://leetcode.com/problems/integer-break/) | ❌
| [✔️](c%2F0343-integer-break.c)
| [✔️](cpp%2F0343-integer-break.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0343-integer-break.java)
| ❌
| [✔️](kotlin%2F0343-integer-break.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0673 - Number of Longest Increasing Subsequence](https://leetcode.com/problems/number-of-longest-increasing-subsequence/) | ❌
| [✔️](c%2F0673-number-of-longest-increasing-subsequence.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0673-number-of-longest-increasing-subsequence.java)
| ❌
| [✔️](kotlin%2F0673-number-of-longest-increasing-subsequence.kt)
| [✔️](python%2F0673-number-of-longest-increasing-subsequence.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0691 - Stickers to Spell Word](https://leetcode.com/problems/stickers-to-spell-word/) | ❌
| [✔️](c%2F0691-stickers-to-spell-word.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0691-stickers-to-spell-word.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1137 - N-th Tribonacci Number](https://leetcode.com/problems/n-th-tribonacci-number/) | ❌
| [✔️](c%2F1137-n-th-tribonacci-number.c)
| [✔️](cpp%2F1137-n-th-tribonacci-number.cpp)
| [✔️](csharp%2F1137-n-th-tribonacci-number.cs)
| ❌
| [✔️](go%2F1137-n-th-tribonacci-number.go)
| ❌
| ❌
| [✔️](javascript%2F1137-n-th-tribonacci-number.js)
| [✔️](kotlin%2F1137-n-th-tribonacci-number.kt)
| [✔️](python%2F1137-n-th-tribonacci-number.py)
| ❌
| [✔️](rust%2F1137-n-th-tribonacci-number.rs)
| ❌
| ❌
| [✔️](typescript%2F1137-n-th-tribonacci-number.ts)
+[1035 - Uncrossed Lines](https://leetcode.com/problems/uncrossed-lines/) | ❌
| [✔️](c%2F1035-uncrossed-lines.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1035-uncrossed-lines.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2140 - Solving Questions With Brainpower](https://leetcode.com/problems/solving-questions-with-brainpower/) | ❌
| [✔️](c%2F2140-solving-questions-with-brainpower.c)
| [✔️](cpp%2F2140-solving-questions-with-brainpower.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2140-solving-questions-with-brainpower.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2466 - Count Ways to Build Good Strings](https://leetcode.com/problems/count-ways-to-build-good-strings/) | ❌
| [✔️](c%2F2466-count-ways-to-build-good-strings.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2466-count-ways-to-build-good-strings.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0837 - New 21 Game](https://leetcode.com/problems/new-21-game/) | ❌
| [✔️](c%2F0837-new-21-game.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0837-new-21-game.java)
| [✔️](javascript%2F0837-new-21-game.js)
| [✔️](kotlin%2F0837-new-21-game.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1626 - Best Team with no Conflicts](https://leetcode.com/problems/best-team-with-no-conflicts/) | ❌
| [✔️](c%2F1626-best-team-with-no-conflicts.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1626-best-team-with-no-conflicts.java)
| ❌
| [✔️](kotlin%2F1626-best-team-with-no-conflicts.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1406 - Stone Game III](https://leetcode.com/problems/stone-game-iii/) | ❌
| [✔️](c%2F1406-stone-game-iii.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1406-stone-game-iii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0472 - Concatenated Words](https://leetcode.com/problems/concatenated-words/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0472-concatenated-words.go)
| ❌
| ❌
| [✔️](javascript%2F0472-concatenated-words.js)
| [✔️](kotlin%2F0472-concatenated-words.kt)
| ❌
| ❌
| [✔️](rust%2F0472-concatenated-words.rs)
| ❌
| ❌
| [✔️](typescript%2F0472-concatenated-words.ts)
+[1799 - Maximize Score after N Operations](https://leetcode.com/problems/maximize-score-after-n-operations/) | ❌
| [✔️](c%2F1799-maximize-score-after-n-operations.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1799-maximize-score-after-n-operations.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1964 - Find the Longest Valid Obstacle Course at Each Position](https://leetcode.com/problems/find-the-longest-valid-obstacle-course-at-each-position/) | ❌
| [✔️](c%2F1964-find-the-longest-valid-obstacle-course-at-each-position.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1964-find-the-longest-valid-obstacle-course-at-each-position.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1359 - Count all Valid Pickup and Delivery Options](https://leetcode.com/problems/count-all-valid-pickup-and-delivery-options/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1359-count-all-valid-pickup-and-delivery-options.java)
| ❌
| [✔️](kotlin%2F1359-count-all-valid-pickup-and-delivery-options.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
### 2-D Dynamic Programming
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0062 - Unique Paths](https://leetcode.com/problems/unique-paths/) | [✔️](c%2F0062-unique-paths.c)
| [✔️](cpp%2F0062-unique-paths.cpp)
| [✔️](csharp%2F0062-unique-paths.cs)
| ❌
| [✔️](go%2F0062-unique-paths.go)
| [✔️](java%2F0062-unique-paths.java)
| [✔️](javascript%2F0062-unique-paths.js)
| [✔️](kotlin%2F0062-unique-paths.kt)
| [✔️](python%2F0062-unique-paths.py)
| ❌
| [✔️](rust%2F0062-unique-paths.rs)
| ❌
| ❌
| [✔️](typescript%2F0062-unique-paths.ts)
-[0063 - Unique Paths II](https://leetcode.com/problems/unique-paths-ii/) | ❌
| [✔️](cpp%2F0063-unique-paths-ii.cpp)
| ❌
| ❌
| [✔️](go%2F0063-Unique-Paths-II.go)
| [✔️](java%2F0063-unique-paths-ii.java)
| ❌
| [✔️](kotlin%2F0063-unique-paths-ii.kt)
| [✔️](python%2F0063-unique-paths-ii.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[1143 - Longest Common Subsequence](https://leetcode.com/problems/longest-common-subsequence/) | ❌
| [✔️](cpp%2F1143-Longest-Common-Subsequence.cpp)
| [✔️](csharp%2F1143-Longest-Common-Subsequence.cs)
| ❌
| [✔️](go%2F1143-Longest-Common-Subsequence.go)
| [✔️](java%2F1143-Longest-Common-Subsequence.java)
| [✔️](javascript%2F1143-Longest-Common-Subsequence.js)
| [✔️](kotlin%2F1143-Longest-Common-Subsequence.kt)
| [✔️](python%2F1143-longest-common-subsequence.py)
| ❌
| [✔️](rust%2F1143-Longest-Common-Subsequence.rs)
| ❌
| [✔️](swift%2F1143-Longest-Common-Subsequence.swift)
| [✔️](typescript%2F1143-Longest-Common-Subsequence.ts)
-[0309 - Best Time to Buy And Sell Stock With Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/) | [✔️](c%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.c)
| [✔️](cpp%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.cpp)
| [✔️](csharp%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.cs)
| ❌
| [✔️](go%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.go)
| [✔️](java%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.java)
| [✔️](javascript%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.js)
| [✔️](kotlin%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.kt)
| [✔️](python%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.py)
| ❌
| [✔️](rust%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.rs)
| ❌
| [✔️](swift%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.swift)
| [✔️](typescript%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.ts)
-[0518 - Coin Change II](https://leetcode.com/problems/coin-change-ii/) | [✔️](c%2F0518-coin-change-ii.c)
| [✔️](cpp%2F0518-coin-change-ii.cpp)
| [✔️](csharp%2F0518-coin-change-ii.cs)
| ❌
| [✔️](go%2F0518-coin-change-ii.go)
| [✔️](java%2F0518-coin-change-ii.java)
| [✔️](javascript%2F0518-coin-change-ii.js)
| ❌
| [✔️](python%2F0518-coin-change-ii.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0518-coin-change-ii.ts)
-[0494 - Target Sum](https://leetcode.com/problems/target-sum/) | ❌
| [✔️](cpp%2F0494-target-sum.cpp)
| [✔️](csharp%2F0494-target-sum.cs)
| ❌
| [✔️](go%2F0494-target-sum.go)
| [✔️](java%2F0494-target-sum.java)
| [✔️](javascript%2F0494-target-sum.js)
| ❌
| [✔️](python%2F0494-target-sum.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0494-target-sum.ts)
-[0097 - Interleaving String](https://leetcode.com/problems/interleaving-string/) | ❌
| [✔️](cpp%2F0097-interleaving-string.cpp)
| [✔️](csharp%2F0097-interleaving-string.cs)
| ❌
| [✔️](go%2F0097-interleaving-string.go)
| [✔️](java%2F0097-interleaving-string.java)
| [✔️](javascript%2F0097-interleaving-string.js)
| [✔️](kotlin%2F0097-interleaving-string.kt)
| [✔️](python%2F0097-interleaving-string.py)
| ❌
| ❌
| [✔️](scala%2F0097-interleaving-string.scala)
| ❌
| [✔️](typescript%2F0097-interleaving-string.ts)
-[0877 - Stone Game](https://leetcode.com/problems/stone-game/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0064 - Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/) | ❌
| [✔️](cpp%2F0064-minimum-path-sum.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0064-minimum-path-sum.java)
| ❌
| ❌
| [✔️](python%2F0064-minimum-path-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0329 - Longest Increasing Path In a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/) | [✔️](c%2F0329-longest-increasing-path-in-a-matrix.c)
| [✔️](cpp%2F0329-longest-increasing-path-in-a-matrix.cpp)
| [✔️](csharp%2F0329-longest-increasing-path-in-a-matrix.cs)
| ❌
| ❌
| [✔️](java%2F0329-longest-increasing-path-in-a-matrix.java)
| [✔️](javascript%2F0329-longest-increasing-path-in-a-matrix.js)
| [✔️](kotlin%2F0329-longest-increasing-path-in-a-matrix.kt)
| [✔️](python%2F0329-longest-increasing-path-in-a-matrix.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0221 - Maximal Square](https://leetcode.com/problems/maximal-square/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0221-maximal-square.java)
| ❌
| ❌
| [✔️](python%2F0221-maximal-square.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[5782 - Maximum Alternating Subsequence Sum](https://leetcode.com/problems/maximum-alternating-subsequence-sum/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0115 - Distinct Subsequences](https://leetcode.com/problems/distinct-subsequences/) | ❌
| [✔️](cpp%2F0115-distinct-subsequences.cpp)
| [✔️](csharp%2F0115-distinct-subsequences.cs)
| ❌
| ❌
| [✔️](java%2F0115-distinct-subsequences.java)
| [✔️](javascript%2F0115-distinct-subsequences.js)
| ❌
| [✔️](python%2F0115-distinct-subsequences.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0115-distinct-subsequences.ts)
-[0072 - Edit Distance](https://leetcode.com/problems/edit-distance/) | ❌
| [✔️](cpp%2F0072-edit-distance.cpp)
| [✔️](csharp%2F0072-edit-distance.cs)
| ❌
| ❌
| [✔️](java%2F0072-edit-distance.java)
| [✔️](javascript%2F0072-edit-distance.js)
| [✔️](kotlin%2F0072-edit-distance.kt)
| [✔️](python%2F0072-edit-distance.py)
| ❌
| ❌
| [✔️](scala%2F0072-edit-distance.scala)
| [✔️](swift%2F0072-edit-distance.swift)
| ❌
-[1220 - Count Vowels Permutation](https://leetcode.com/problems/count-vowels-permutation/) | ❌
| [✔️](cpp%2F1220-count-vowels-permutation.cpp)
| ❌
| ❌
| [✔️](go%2F1220-count-vowels-permutation.go)
| [✔️](java%2F1220-Count-Vowels-Permutation.java)
| ❌
| ❌
| [✔️](python%2F1220-count-vowels-permutation.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0312 - Burst Balloons](https://leetcode.com/problems/burst-balloons/) | ❌
| [✔️](cpp%2F0312-burst-balloons.cpp)
| [✔️](csharp%2F0312-burst-balloons.cs)
| ❌
| ❌
| [✔️](java%2F0312-burst-balloons.java)
| [✔️](javascript%2F0312-burst-balloons.js)
| [✔️](kotlin%2F0312-burst-balloons.kt)
| [✔️](python%2F0312-burst-balloons.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0312-burst-balloons.ts)
-[1866 - Number of Ways to Rearrange Sticks With K Sticks Visible](https://leetcode.com/problems/number-of-ways-to-rearrange-sticks-with-k-sticks-visible/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0010 - Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/) | ❌
| [✔️](cpp%2F0010-regular-expression-matching.cpp)
| [✔️](csharp%2F0010-regular-expression-matching.cs)
| ❌
| [✔️](go%2F0010-regular-expression-matching.go)
| [✔️](java%2F0010-regular-expression-matching.java)
| [✔️](javascript%2F0010-regular-expression-matching.js)
| ❌
| [✔️](python%2F0010-regular-expression-matching.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0010-regular-expression-matching.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0062 - Unique Paths](https://leetcode.com/problems/unique-paths/) | ❌
| [✔️](c%2F0062-unique-paths.c)
| [✔️](cpp%2F0062-unique-paths.cpp)
| [✔️](csharp%2F0062-unique-paths.cs)
| ❌
| [✔️](go%2F0062-unique-paths.go)
| ❌
| [✔️](java%2F0062-unique-paths.java)
| [✔️](javascript%2F0062-unique-paths.js)
| [✔️](kotlin%2F0062-unique-paths.kt)
| [✔️](python%2F0062-unique-paths.py)
| ❌
| [✔️](rust%2F0062-unique-paths.rs)
| ❌
| [✔️](swift%2F0062-unique-paths.swift)
| [✔️](typescript%2F0062-unique-paths.ts)
+[0063 - Unique Paths II](https://leetcode.com/problems/unique-paths-ii/) | ❌
| ❌
| [✔️](cpp%2F0063-unique-paths-ii.cpp)
| [✔️](csharp%2F0063-unique-paths-ii.cs)
| ❌
| [✔️](go%2F0063-unique-paths-ii.go)
| ❌
| [✔️](java%2F0063-unique-paths-ii.java)
| ❌
| [✔️](kotlin%2F0063-unique-paths-ii.kt)
| [✔️](python%2F0063-unique-paths-ii.py)
| ❌
| [✔️](rust%2F0063-unique-paths-ii.rs)
| ❌
| [✔️](swift%2F0063-unique-paths-ii.swift)
| ❌
+[1143 - Longest Common Subsequence](https://leetcode.com/problems/longest-common-subsequence/) | ❌
| [✔️](c%2F1143-longest-common-subsequence.c)
| [✔️](cpp%2F1143-Longest-Common-Subsequence.cpp)
| [✔️](csharp%2F1143-Longest-Common-Subsequence.cs)
| [✔️](dart%2F1143-longest-common-subsequence.dart)
| [✔️](go%2F1143-Longest-Common-Subsequence.go)
| ❌
| [✔️](java%2F1143-longest-common-subsequence.java)
| [✔️](javascript%2F1143-Longest-Common-Subsequence.js)
| [✔️](kotlin%2F1143-Longest-Common-Subsequence.kt)
| [✔️](python%2F1143-longest-common-subsequence.py)
| ❌
| [✔️](rust%2F1143-Longest-Common-Subsequence.rs)
| ❌
| [✔️](swift%2F1143-Longest-Common-Subsequence.swift)
| [✔️](typescript%2F1143-Longest-Common-Subsequence.ts)
+[0516 - Longest Palindromic Subsequence](https://leetcode.com/problems/longest-palindromic-subsequence/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0516-longest-palindromic-subsequence.kt)
| [✔️](python%2F0516-longest-palindromic-subsequence.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0516-longest-palindromic-subsequence.swift)
| ❌
+[1049 - Last Stone Weight II](https://leetcode.com/problems/last-stone-weight-ii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1049-last-stone-weight-ii.kt)
| [✔️](python%2F1049-last-stone-weight-ii.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1049-last-stone-weight-ii.swift)
| [✔️](typescript%2F1049-last-stone-weight-ii.ts)
+[0309 - Best Time to Buy And Sell Stock With Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/) | ❌
| [✔️](c%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.c)
| [✔️](cpp%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.cpp)
| [✔️](csharp%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.cs)
| ❌
| [✔️](go%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.go)
| ❌
| [✔️](java%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.java)
| [✔️](javascript%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.js)
| [✔️](kotlin%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.kt)
| [✔️](python%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.py)
| ❌
| [✔️](rust%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.rs)
| ❌
| [✔️](swift%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.swift)
| [✔️](typescript%2F0309-best-time-to-buy-and-sell-stock-with-cooldown.ts)
+[0518 - Coin Change II](https://leetcode.com/problems/coin-change-ii/) | ❌
| [✔️](c%2F0518-coin-change-ii.c)
| [✔️](cpp%2F0518-coin-change-ii.cpp)
| [✔️](csharp%2F0518-coin-change-ii.cs)
| ❌
| [✔️](go%2F0518-coin-change-ii.go)
| ❌
| [✔️](java%2F0518-coin-change-ii.java)
| [✔️](javascript%2F0518-coin-change-ii.js)
| [✔️](kotlin%2F0518-coin-change-ii.kt)
| [✔️](python%2F0518-coin-change-ii.py)
| ❌
| [✔️](rust%2F0518-coin-change-ii.rs)
| ❌
| [✔️](swift%2F0518-coin-change-ii.swift)
| [✔️](typescript%2F0518-coin-change-ii.ts)
+[0494 - Target Sum](https://leetcode.com/problems/target-sum/) | ❌
| [✔️](c%2F0494-target-sum.c)
| [✔️](cpp%2F0494-target-sum.cpp)
| [✔️](csharp%2F0494-target-sum.cs)
| ❌
| [✔️](go%2F0494-target-sum.go)
| ❌
| [✔️](java%2F0494-target-sum.java)
| [✔️](javascript%2F0494-target-sum.js)
| [✔️](kotlin%2F0494-target-sum.kt)
| [✔️](python%2F0494-target-sum.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0494-target-sum.swift)
| [✔️](typescript%2F0494-target-sum.ts)
+[0097 - Interleaving String](https://leetcode.com/problems/interleaving-string/) | ❌
| [✔️](c%2F0097-interleaving-string.c)
| [✔️](cpp%2F0097-interleaving-string.cpp)
| [✔️](csharp%2F0097-interleaving-string.cs)
| ❌
| [✔️](go%2F0097-interleaving-string.go)
| ❌
| [✔️](java%2F0097-interleaving-string.java)
| [✔️](javascript%2F0097-interleaving-string.js)
| [✔️](kotlin%2F0097-interleaving-string.kt)
| [✔️](python%2F0097-interleaving-string.py)
| ❌
| ❌
| [✔️](scala%2F0097-interleaving-string.scala)
| [✔️](swift%2F0097-interleaving-string.swift)
| [✔️](typescript%2F0097-interleaving-string.ts)
+[0877 - Stone Game](https://leetcode.com/problems/stone-game/) | ❌
| ❌
| [✔️](cpp%2F0877-stone-game.cpp)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0877-stone-game.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0064 - Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/) | ❌
| ❌
| [✔️](cpp%2F0064-minimum-path-sum.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0064-minimum-path-sum.java)
| ❌
| [✔️](kotlin%2F0064-minimum-path-sum.kt)
| [✔️](python%2F0064-minimum-path-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0329 - Longest Increasing Path In a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/) | ❌
| [✔️](c%2F0329-longest-increasing-path-in-a-matrix.c)
| [✔️](cpp%2F0329-longest-increasing-path-in-a-matrix.cpp)
| [✔️](csharp%2F0329-longest-increasing-path-in-a-matrix.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0329-longest-increasing-path-in-a-matrix.java)
| [✔️](javascript%2F0329-longest-increasing-path-in-a-matrix.js)
| [✔️](kotlin%2F0329-longest-increasing-path-in-a-matrix.kt)
| [✔️](python%2F0329-longest-increasing-path-in-a-matrix.py)
| ❌
| [✔️](rust%2F0329-longest-increasing-path-in-a-matrix.rs)
| ❌
| [✔️](swift%2F0329-longest-increasing-path-in-a-matrix.swift)
| ❌
+[0221 - Maximal Square](https://leetcode.com/problems/maximal-square/) | ❌
| ❌
| [✔️](cpp%2F0221-maximal-square.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0221-maximal-square.java)
| ❌
| [✔️](kotlin%2F0221-maximal-square.kt)
| [✔️](python%2F0221-maximal-square.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0474 - Ones and Zeroes](https://leetcode.com/problems/ones-and-zeroes/) | ❌
| ❌
| [✔️](cpp%2F0474-ones-and-zeroes.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0474-ones-and-zeroes.java)
| ❌
| [✔️](kotlin%2F0474-ones-and-zeroes.kt)
| [✔️](python%2F0474-ones-and-zeroes.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0474-ones-and-zeroes.swift)
| [✔️](typescript%2F0474-ones-and-zeroes.ts)
+[5782 - Maximum Alternating Subsequence Sum](https://leetcode.com/problems/maximum-alternating-subsequence-sum/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0115 - Distinct Subsequences](https://leetcode.com/problems/distinct-subsequences/) | ❌
| [✔️](c%2F0115-distinct-subsequences.c)
| [✔️](cpp%2F0115-distinct-subsequences.cpp)
| [✔️](csharp%2F0115-distinct-subsequences.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0115-distinct-subsequences.java)
| [✔️](javascript%2F0115-distinct-subsequences.js)
| [✔️](kotlin%2F0115-distinct-subsequences.kt)
| [✔️](python%2F0115-distinct-subsequences.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0115-distinct-subsequences.swift)
| [✔️](typescript%2F0115-distinct-subsequences.ts)
+[0072 - Edit Distance](https://leetcode.com/problems/edit-distance/) | ❌
| [✔️](c%2F0072-edit-distance.c)
| [✔️](cpp%2F0072-edit-distance.cpp)
| [✔️](csharp%2F0072-edit-distance.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0072-edit-distance.java)
| [✔️](javascript%2F0072-edit-distance.js)
| [✔️](kotlin%2F0072-edit-distance.kt)
| [✔️](python%2F0072-edit-distance.py)
| ❌
| [✔️](rust%2F0072-edit-distance.rs)
| [✔️](scala%2F0072-edit-distance.scala)
| [✔️](swift%2F0072-edit-distance.swift)
| [✔️](typescript%2F0072-edit-distance.ts)
+[1220 - Count Vowels Permutation](https://leetcode.com/problems/count-vowels-permutation/) | ❌
| ❌
| [✔️](cpp%2F1220-count-vowels-permutation.cpp)
| ❌
| ❌
| [✔️](go%2F1220-count-vowels-permutation.go)
| ❌
| [✔️](java%2F1220-count-vowels-permutation.java)
| ❌
| [✔️](kotlin%2F1220-count-vowels-permutation.kt)
| [✔️](python%2F1220-count-vowels-permutation.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0312 - Burst Balloons](https://leetcode.com/problems/burst-balloons/) | ❌
| [✔️](c%2F0312-burst-balloons.c)
| [✔️](cpp%2F0312-burst-balloons.cpp)
| [✔️](csharp%2F0312-burst-balloons.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0312-burst-balloons.java)
| [✔️](javascript%2F0312-burst-balloons.js)
| [✔️](kotlin%2F0312-burst-balloons.kt)
| [✔️](python%2F0312-burst-balloons.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0312-burst-balloons.swift)
| [✔️](typescript%2F0312-burst-balloons.ts)
+[1866 - Number of Ways to Rearrange Sticks With K Sticks Visible](https://leetcode.com/problems/number-of-ways-to-rearrange-sticks-with-k-sticks-visible/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1866-number-of-ways-to-rearrange-sticks-with-k-sticks-visible.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0010 - Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/) | ❌
| [✔️](c%2F0010-regular-expression-matching.c)
| [✔️](cpp%2F0010-regular-expression-matching.cpp)
| [✔️](csharp%2F0010-regular-expression-matching.cs)
| ❌
| [✔️](go%2F0010-regular-expression-matching.go)
| ❌
| [✔️](java%2F0010-regular-expression-matching.java)
| [✔️](javascript%2F0010-regular-expression-matching.js)
| [✔️](kotlin%2F0010-regular-expression-matching.kt)
| [✔️](python%2F0010-regular-expression-matching.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0010-regular-expression-matching.swift)
| [✔️](typescript%2F0010-regular-expression-matching.ts)
+[1140 - Stone Game II](https://leetcode.com/problems/stone-game-ii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1140-stone-game-ii.java)
| ❌
| [✔️](kotlin%2F1140-stone-game-ii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0926 - Flip String to Monotone Increasing](https://leetcode.com/problems/flip-string-to-monotone-increasing/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0926-flip-string-to-monotone-increasing.go)
| ❌
| ❌
| [✔️](javascript%2F0926-flip-string-to-monotone-increasing.js)
| [✔️](kotlin%2F0926-flip-string-to-monotone-increasing.kt)
| ❌
| ❌
| [✔️](rust%2F0926-flip-string-to-monotone-increasing.rs)
| ❌
| ❌
| [✔️](typescript%2F0926-flip-string-to-monotone-increasing.ts)
+[2218 - Maximum Value of K Coins from Piles](https://leetcode.com/problems/maximum-value-of-k-coins-from-piles/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2218-maximum-value-of-k-coins-from-piles.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0920 - Number of Music Playlists](https://leetcode.com/problems/number-of-music-playlists/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0920-number-of-music-playlists.java)
| ❌
| [✔️](kotlin%2F0920-number-of-music-playlists.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1639 - Number of Ways to Form a Target String Given a Dictionary](https://leetcode.com/problems/number-of-ways-to-form-a-target-string-given-a-dictionary/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1639-number-of-ways-to-form-a-target-string-given-a-dictionary.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0879 - Profitable Schemes](https://leetcode.com/problems/profitable-schemes/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0879-profitable-schemes.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1547 - Minimum Cost to Cut a Stick](https://leetcode.com/problems/minimum-cost-to-cut-a-stick/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1547-minimum-cost-to-cut-a-stick.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
### Greedy
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0053 - Maximum Subarray](https://leetcode.com/problems/maximum-subarray/) | [✔️](c%2F0053-maximum-subarray.c)
| [✔️](cpp%2F0053-maximum-subarray.cpp)
| [✔️](csharp%2F0053-maximum-subarray.cs)
| ❌
| [✔️](go%2F0053-maximum-subarray.go)
| [✔️](java%2F0053-maximum-subarray.java)
| [✔️](javascript%2F0053-maximum-subarray.js)
| [✔️](kotlin%2F0053-maximum-subarray.kt)
| [✔️](python%2F0053-maximum-subarray.py)
| [✔️](ruby%2F0053-maximum-subarray.rb)
| [✔️](rust%2F0053-maximum-subarray.rs)
| ❌
| [✔️](swift%2F0053-maximum-subarray.swift)
| [✔️](typescript%2F0053-maximum-subarray.ts)
-[0918 - Maximum Sum Circular Subarray](https://leetcode.com/problems/maximum-sum-circular-subarray/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0918-maximum-sum-circular-subarray.go)
| ❌
| [✔️](javascript%2F0918-maximum-sum-circular-subarray.js)
| [✔️](kotlin%2F0918-maximum-sum-circular-subarray.kt)
| [✔️](python%2F0918-maximum-sum-circular-subarray.py)
| ❌
| [✔️](rust%2F0918-maximum-sum-circular-subarray.rs)
| ❌
| ❌
| [✔️](typescript%2F0918-maximum-sum-circular-subarray.ts)
-[0055 - Jump Game](https://leetcode.com/problems/jump-game/) | [✔️](c%2F0055-jump-game.c)
| [✔️](cpp%2F0055-jump-game.cpp)
| [✔️](csharp%2F0055-jump-game.cs)
| ❌
| [✔️](go%2F0055-jump-game.go)
| [✔️](java%2F0055-jump-game.java)
| [✔️](javascript%2F0055-jump-game.js)
| [✔️](kotlin%2F0055-jump-game.kt)
| [✔️](python%2F0055-jump-game.py)
| ❌
| [✔️](rust%2F0055-jump-game.rs)
| ❌
| [✔️](swift%2F0055-jump-game.swift)
| [✔️](typescript%2F0055-jump-game.ts)
-[0045 - Jump Game II](https://leetcode.com/problems/jump-game-ii/) | [✔️](c%2F0045-jump-game-ii.c)
| [✔️](cpp%2F0045-jump-game-ii.cpp)
| [✔️](csharp%2F0045-jump-game-ii.cs)
| ❌
| [✔️](go%2F0045-jump-game-ii.go)
| [✔️](java%2F0045-jump-game-ii.java)
| [✔️](javascript%2F0045-jump-game-ii.js)
| [✔️](kotlin%2F0045-jump-game-ii.kt)
| [✔️](python%2F0045-jump-game-ii.py)
| [✔️](ruby%2F0045-jump-game-ii.rb)
| ❌
| ❌
| [✔️](swift%2F0045-jump-game-ii.swift)
| [✔️](typescript%2F0045-jump-game-ii.ts)
-[1871 - Jump Game VII](https://leetcode.com/problems/jump-game-vii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0134 - Gas Station](https://leetcode.com/problems/gas-station/) | [✔️](c%2F0134-gas-station.c)
| [✔️](cpp%2F0134-gas-station.cpp)
| [✔️](csharp%2F0134-gas-station.cs)
| ❌
| [✔️](go%2F0134-gas-station.go)
| [✔️](java%2F0134-gas-station.java)
| [✔️](javascript%2F0134-gas-station.js)
| [✔️](kotlin%2F0134-gas-station.kt)
| [✔️](python%2F0134-gas-station.py)
| [✔️](ruby%2F0134-gas-station.rb)
| ❌
| ❌
| [✔️](swift%2F0134-gas-station.swift)
| [✔️](typescript%2F0134-gas-station.ts)
-[0846 - Hand of Straights](https://leetcode.com/problems/hand-of-straights/) | ❌
| [✔️](cpp%2F0846-hand-of-straights.cpp)
| [✔️](csharp%2F0846-hand-of-straights.cs)
| ❌
| [✔️](go%2F0846-hand-of-straights.go)
| [✔️](java%2F0846-hand-of-straights.java)
| [✔️](javascript%2F0846-hand-of-straights.js)
| ❌
| [✔️](python%2F0846-hand-of-straights.py)
| [✔️](ruby%2F0846-hand-of-straights.rb)
| ❌
| ❌
| ❌
| [✔️](typescript%2F0846-hand-of-straights.ts)
-[1423 - Maximum Points You Can Obtain From Cards](https://leetcode.com/problems/maximum-points-you-can-obtain-from-cards/) | ❌
| ❌
| [✔️](csharp%2F1423-Maximum-Points-You-Can-Obtain-from-Cards.cs)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1899 - Merge Triplets to Form Target Triplet](https://leetcode.com/problems/merge-triplets-to-form-target-triplet/) | ❌
| [✔️](cpp%2F1899-merge-triplets-to-form-target-triplet.cpp)
| [✔️](csharp%2F1899-Merge-Triplets-to-Form-Target-Triplet.cs)
| ❌
| ❌
| [✔️](java%2F1899-merge-triplets-to-form-target-triplet.java)
| [✔️](javascript%2F1899-merge-triplets-to-form-target-triplet.js)
| ❌
| [✔️](python%2F1899-merge-triplets-to-form-target-triplet.py)
| [✔️](ruby%2F1899-merge-triplets-to-form-target-triplet.rb)
| ❌
| ❌
| [✔️](swift%2F1899-Merge-Triplets-To-Form-Target-Triplet.swift)
| [✔️](typescript%2F1899-Merge-Triplets-to-Form-Target-Triplet.ts)
-[0763 - Partition Labels](https://leetcode.com/problems/partition-labels/) | ❌
| [✔️](cpp%2F0763-partition-labels.cpp)
| [✔️](csharp%2F0763-partition-labels.cs)
| ❌
| [✔️](go%2F0763-partition-labels.go)
| [✔️](java%2F0763-partition-labels.java)
| [✔️](javascript%2F0763-partition-labels.js)
| ❌
| [✔️](python%2F0763-partition-labels.py)
| [✔️](ruby%2F0763-partition-labels.rb)
| ❌
| ❌
| ❌
| ❌
-[0678 - Valid Parenthesis String](https://leetcode.com/problems/valid-parenthesis-string/) | [✔️](c%2F0678-valid-parenthesis-string.c)
| [✔️](cpp%2F0678-valid-parenthesis-string.cpp)
| [✔️](csharp%2F0678-valid-parenthesis-string.cs)
| ❌
| ❌
| [✔️](java%2F0678-valid-parenthesis-string.java)
| [✔️](javascript%2F0678-valid-parenthesis-string.js)
| ❌
| [✔️](python%2F0678-valid-parenthesis-string.py)
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F0678-valid-parenthesis-string.ts)
-[1921 - Eliminate Maximum Number of Monsters](https://leetcode.com/problems/eliminate-maximum-number-of-monsters/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1029 - Two City Scheduling](https://leetcode.com/problems/two-city-scheduling/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1029-two-city-scheduling.go)
| [✔️](java%2F1029-two-city-scheduling.java)
| [✔️](javascript%2F1029-two-city-scheduling.js)
| ❌
| [✔️](python%2F1029-two-city-scheduling.py)
| ❌
| [✔️](rust%2F1029-two-city-scheduling.rs)
| ❌
| ❌
| [✔️](typescript%2F1029-two-city-scheduling.ts)
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0053 - Maximum Subarray](https://leetcode.com/problems/maximum-subarray/) | ❌
| [✔️](c%2F0053-maximum-subarray.c)
| [✔️](cpp%2F0053-maximum-subarray.cpp)
| [✔️](csharp%2F0053-maximum-subarray.cs)
| ❌
| [✔️](go%2F0053-maximum-subarray.go)
| ❌
| [✔️](java%2F0053-maximum-subarray.java)
| [✔️](javascript%2F0053-maximum-subarray.js)
| [✔️](kotlin%2F0053-maximum-subarray.kt)
| [✔️](python%2F0053-maximum-subarray.py)
| [✔️](ruby%2F0053-maximum-subarray.rb)
| [✔️](rust%2F0053-maximum-subarray.rs)
| ❌
| [✔️](swift%2F0053-maximum-subarray.swift)
| [✔️](typescript%2F0053-maximum-subarray.ts)
+[0918 - Maximum Sum Circular Subarray](https://leetcode.com/problems/maximum-sum-circular-subarray/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0918-maximum-sum-circular-subarray.go)
| ❌
| [✔️](java%2F0918-maximum-sum-circular-subarray.java)
| [✔️](javascript%2F0918-maximum-sum-circular-subarray.js)
| [✔️](kotlin%2F0918-maximum-sum-circular-subarray.kt)
| [✔️](python%2F0918-maximum-sum-circular-subarray.py)
| ❌
| [✔️](rust%2F0918-maximum-sum-circular-subarray.rs)
| ❌
| [✔️](swift%2F0918-maximum-sum-circular-subarray.swift)
| [✔️](typescript%2F0918-maximum-sum-circular-subarray.ts)
+[0978 - Longest Turbulent Array](https://leetcode.com/problems/longest-turbulent-subarray/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F0978-longest-turbulent-subarray.js)
| [✔️](kotlin%2F0978-longest-turbulent-subarray.kt)
| [✔️](python%2F0978-longest-turbulent-subarray.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0978-longest-turbulent-subarray.swift)
| ❌
+[0055 - Jump Game](https://leetcode.com/problems/jump-game/) | ❌
| [✔️](c%2F0055-jump-game.c)
| [✔️](cpp%2F0055-jump-game.cpp)
| [✔️](csharp%2F0055-jump-game.cs)
| ❌
| [✔️](go%2F0055-jump-game.go)
| ❌
| [✔️](java%2F0055-jump-game.java)
| [✔️](javascript%2F0055-jump-game.js)
| [✔️](kotlin%2F0055-jump-game.kt)
| [✔️](python%2F0055-jump-game.py)
| ❌
| [✔️](rust%2F0055-jump-game.rs)
| ❌
| [✔️](swift%2F0055-jump-game.swift)
| [✔️](typescript%2F0055-jump-game.ts)
+[0045 - Jump Game II](https://leetcode.com/problems/jump-game-ii/) | ❌
| [✔️](c%2F0045-jump-game-ii.c)
| [✔️](cpp%2F0045-jump-game-ii.cpp)
| [✔️](csharp%2F0045-jump-game-ii.cs)
| ❌
| [✔️](go%2F0045-jump-game-ii.go)
| ❌
| [✔️](java%2F0045-jump-game-ii.java)
| [✔️](javascript%2F0045-jump-game-ii.js)
| [✔️](kotlin%2F0045-jump-game-ii.kt)
| [✔️](python%2F0045-jump-game-ii.py)
| [✔️](ruby%2F0045-jump-game-ii.rb)
| [✔️](rust%2F0045-jump-game-ii.rs)
| ❌
| [✔️](swift%2F0045-jump-game-ii.swift)
| [✔️](typescript%2F0045-jump-game-ii.ts)
+[1871 - Jump Game VII](https://leetcode.com/problems/jump-game-vii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1871-jump-game-vii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0134 - Gas Station](https://leetcode.com/problems/gas-station/) | ❌
| [✔️](c%2F0134-gas-station.c)
| [✔️](cpp%2F0134-gas-station.cpp)
| [✔️](csharp%2F0134-gas-station.cs)
| ❌
| [✔️](go%2F0134-gas-station.go)
| ❌
| [✔️](java%2F0134-gas-station.java)
| [✔️](javascript%2F0134-gas-station.js)
| [✔️](kotlin%2F0134-gas-station.kt)
| [✔️](python%2F0134-gas-station.py)
| [✔️](ruby%2F0134-gas-station.rb)
| ❌
| ❌
| [✔️](swift%2F0134-gas-station.swift)
| [✔️](typescript%2F0134-gas-station.ts)
+[0846 - Hand of Straights](https://leetcode.com/problems/hand-of-straights/) | ❌
| [✔️](c%2F0846-hand-of-straights.c)
| [✔️](cpp%2F0846-hand-of-straights.cpp)
| [✔️](csharp%2F0846-hand-of-straights.cs)
| ❌
| [✔️](go%2F0846-hand-of-straights.go)
| ❌
| [✔️](java%2F0846-hand-of-straights.java)
| [✔️](javascript%2F0846-hand-of-straights.js)
| [✔️](kotlin%2F0846-hand-of-straights.kt)
| [✔️](python%2F0846-hand-of-straights.py)
| [✔️](ruby%2F0846-hand-of-straights.rb)
| ❌
| ❌
| [✔️](swift%2F0846-hand-of-straights.swift)
| [✔️](typescript%2F0846-hand-of-straights.ts)
+[2439 - Minimize Maximum of Array](https://leetcode.com/problems/minimize-maximum-of-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2439-minimize-maximum-of-array.js)
| [✔️](kotlin%2F2439-minimize-maximum-of-array.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0649 - Dota2 Senate](https://leetcode.com/problems/dota2-senate/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0649-dota2-senate.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1423 - Maximum Points You Can Obtain From Cards](https://leetcode.com/problems/maximum-points-you-can-obtain-from-cards/) | ❌
| ❌
| ❌
| [✔️](csharp%2F1423-Maximum-Points-You-Can-Obtain-from-Cards.cs)
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F1423-maximum-points-you-can-obtain-from-cards.js)
| [✔️](kotlin%2F1423-maximum-points-you-can-obtain-from-cards.kt)
| [✔️](python%2F1423-maximum-points-you-can-obtain-from-cards.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1899 - Merge Triplets to Form Target Triplet](https://leetcode.com/problems/merge-triplets-to-form-target-triplet/) | ❌
| [✔️](c%2F1899-merge-triplets-to-form-target-triplet.c)
| [✔️](cpp%2F1899-merge-triplets-to-form-target-triplet.cpp)
| [✔️](csharp%2F1899-Merge-Triplets-to-Form-Target-Triplet.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1899-merge-triplets-to-form-target-triplet.java)
| [✔️](javascript%2F1899-merge-triplets-to-form-target-triplet.js)
| [✔️](kotlin%2F1899-merge-triplets-to-form-target-triplet.kt)
| [✔️](python%2F1899-merge-triplets-to-form-target-triplet.py)
| [✔️](ruby%2F1899-merge-triplets-to-form-target-triplet.rb)
| ❌
| ❌
| [✔️](swift%2F1899-Merge-Triplets-To-Form-Target-Triplet.swift)
| [✔️](typescript%2F1899-Merge-Triplets-to-Form-Target-Triplet.ts)
+[0763 - Partition Labels](https://leetcode.com/problems/partition-labels/) | ❌
| [✔️](c%2F0763-partition-labels.c)
| [✔️](cpp%2F0763-partition-labels.cpp)
| [✔️](csharp%2F0763-partition-labels.cs)
| ❌
| [✔️](go%2F0763-partition-labels.go)
| ❌
| [✔️](java%2F0763-partition-labels.java)
| [✔️](javascript%2F0763-partition-labels.js)
| [✔️](kotlin%2F0763-partition-labels.kt)
| [✔️](python%2F0763-partition-labels.py)
| [✔️](ruby%2F0763-partition-labels.rb)
| ❌
| ❌
| [✔️](swift%2F0763-partition-labels.swift)
| ❌
+[0678 - Valid Parenthesis String](https://leetcode.com/problems/valid-parenthesis-string/) | ❌
| [✔️](c%2F0678-valid-parenthesis-string.c)
| [✔️](cpp%2F0678-valid-parenthesis-string.cpp)
| [✔️](csharp%2F0678-valid-parenthesis-string.cs)
| ❌
| [✔️](go%2F0678-valid-parenthesis-string.go)
| ❌
| [✔️](java%2F0678-valid-parenthesis-string.java)
| [✔️](javascript%2F0678-valid-parenthesis-string.js)
| [✔️](kotlin%2F0678-valid-parenthesis-string.kt)
| [✔️](python%2F0678-valid-parenthesis-string.py)
| ❌
| [✔️](rust%2F0678-valid-parenthesis-string.rs)
| ❌
| [✔️](swift%2F0678-valid-parenthesis-string.swift)
| [✔️](typescript%2F0678-valid-parenthesis-string.ts)
+[1921 - Eliminate Maximum Number of Monsters](https://leetcode.com/problems/eliminate-maximum-number-of-monsters/) | ❌
| ❌
| [✔️](cpp%2F1921-eliminate-maximum-number-of-monsters.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1921-eliminate-maximum-number-of-monsters.java)
| [✔️](javascript%2F1921-eliminate-maximum-number-of-monsters.js)
| [✔️](kotlin%2F1921-eliminate-maximum-number-of-monsters.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1029 - Two City Scheduling](https://leetcode.com/problems/two-city-scheduling/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F1029-two-city-scheduling.go)
| ❌
| [✔️](java%2F1029-two-city-scheduling.java)
| [✔️](javascript%2F1029-two-city-scheduling.js)
| [✔️](kotlin%2F1029-two-city-scheduling.kt)
| [✔️](python%2F1029-two-city-scheduling.py)
| ❌
| [✔️](rust%2F1029-two-city-scheduling.rs)
| ❌
| ❌
| [✔️](typescript%2F1029-two-city-scheduling.ts)
+[0646 - Maximum Length of Pair Chain](https://leetcode.com/problems/maximum-length-of-pair-chain/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F0646-maximum-length-of-pair-chain.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[1647 - Minimum Deletions to Make Character Frequencies Unique](https://leetcode.com/problems/minimum-deletions-to-make-character-frequencies-unique/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1647-minimum-deletions-to-make-character-frequencies-unique.java)
| [✔️](javascript%2F1647-minimum-deletions-to-make-character-frequencies-unique.js)
| [✔️](kotlin%2F1647-minimum-deletions-to-make-character-frequencies-unique.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[135- - Candy](https://leetcode.com/problems/candy/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
### Intervals
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0057 - Insert Interval](https://leetcode.com/problems/insert-interval/) | ❌
| [✔️](cpp%2F0057-insert-interval.cpp)
| [✔️](csharp%2F0057-insert-interval.cs)
| ❌
| [✔️](go%2F0057-insert-interval.go)
| [✔️](java%2F0057-insert-interval.java)
| [✔️](javascript%2F0057-insert-interval.js)
| [✔️](kotlin%2F0057-insert-interval.kt)
| [✔️](python%2F0057-insert-interval.py)
| ❌
| [✔️](rust%2F0057-insert-interval.rs)
| ❌
| [✔️](swift%2F0057-insert-interval.swift)
| [✔️](typescript%2F0057-insert-interval.ts)
-[0056 - Merge Intervals](https://leetcode.com/problems/merge-intervals/) | ❌
| [✔️](cpp%2F0056-merge-intervals.cpp)
| [✔️](csharp%2F0056-merge-intervals.cs)
| ❌
| [✔️](go%2F0056-merge-intervals.go)
| [✔️](java%2F0056-merge-intervals.java)
| [✔️](javascript%2F0056-merge-intervals.js)
| [✔️](kotlin%2F0056-merge-intervals.kt)
| [✔️](python%2F0056-merge-intervals.py)
| ❌
| ❌
| [✔️](scala%2F0056-merge-intervals.scala)
| ❌
| [✔️](typescript%2F0056-merge-intervals.ts)
-[0435 - Non Overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/) | ❌
| [✔️](cpp%2F0435-non-overlapping-intervals.cpp)
| [✔️](csharp%2F0435-non-overlapping-intervals.cs)
| ❌
| [✔️](go%2F0435-non-overlapping-intervals.go)
| [✔️](java%2F0435-non-overlapping-intervals.java)
| [✔️](javascript%2F0435-non-overlapping-intervals.js)
| ❌
| [✔️](python%2F0435-non-overlapping-intervals.py)
| ❌
| ❌
| [✔️](scala%2F0435-non-overlapping-intervals.scala)
| ❌
| [✔️](typescript%2F0435-non-overlapping-intervals.ts)
-[0252 - Meeting Rooms](https://leetcode.com/problems/meeting-rooms/) | ❌
| [✔️](cpp%2F0252-meeting-rooms.cpp)
| [✔️](csharp%2F0252-meeting-rooms.cs)
| ❌
| ❌
| [✔️](java%2F0252-meeting-rooms.java)
| [✔️](javascript%2F0252-meeting-rooms.js)
| ❌
| [✔️](python%2F0252-meeting-rooms.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0253 - Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/) | ❌
| [✔️](cpp%2F0253-meeting-rooms-ii.cpp)
| [✔️](csharp%2F0253-meeting-rooms-ii.cs)
| ❌
| ❌
| [✔️](java%2F0253-meeting-rooms-ii.java)
| [✔️](javascript%2F0253-meeting-rooms-ii.js)
| ❌
| [✔️](python%2F0253-meeting-rooms-ii.py)
| ❌
| [✔️](rust%2F0253-meeting-rooms-ii.rs)
| ❌
| ❌
| ❌
-[1288 - Remove Covered Intervals](https://leetcode.com/problems/remove-covered-intervals/) | [✔️](c%2F1288-Remove-Covered-Intervals.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[1851 - Minimum Interval to Include Each Query](https://leetcode.com/problems/minimum-interval-to-include-each-query/) | ❌
| [✔️](cpp%2F1851-Minimum-Interval-To-Include-Each-Query.cpp)
| [✔️](csharp%2F1851-Minimum-Interval-to-Include-Each-Query.cs)
| ❌
| ❌
| [✔️](java%2F1851-Minimum-Interval-to-Include-Each-Query.java)
| ❌
| ❌
| [✔️](python%2F1851-minimum-interval-to-include-each-query.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0057 - Insert Interval](https://leetcode.com/problems/insert-interval/) | ❌
| [✔️](c%2F0057-insert-interval.c)
| [✔️](cpp%2F0057-insert-interval.cpp)
| [✔️](csharp%2F0057-insert-interval.cs)
| ❌
| [✔️](go%2F0057-insert-interval.go)
| ❌
| [✔️](java%2F0057-insert-interval.java)
| [✔️](javascript%2F0057-insert-interval.js)
| [✔️](kotlin%2F0057-insert-interval.kt)
| [✔️](python%2F0057-insert-interval.py)
| ❌
| [✔️](rust%2F0057-insert-interval.rs)
| ❌
| [✔️](swift%2F0057-insert-interval.swift)
| [✔️](typescript%2F0057-insert-interval.ts)
+[0056 - Merge Intervals](https://leetcode.com/problems/merge-intervals/) | ❌
| [✔️](c%2F0056-merge-intervals.c)
| [✔️](cpp%2F0056-merge-intervals.cpp)
| [✔️](csharp%2F0056-merge-intervals.cs)
| ❌
| [✔️](go%2F0056-merge-intervals.go)
| ❌
| [✔️](java%2F0056-merge-intervals.java)
| [✔️](javascript%2F0056-merge-intervals.js)
| [✔️](kotlin%2F0056-merge-intervals.kt)
| [✔️](python%2F0056-merge-intervals.py)
| ❌
| [✔️](rust%2F0056-merge-intervals.rs)
| [✔️](scala%2F0056-merge-intervals.scala)
| [✔️](swift%2F0056-merge-intervals.swift)
| [✔️](typescript%2F0056-merge-intervals.ts)
+[0435 - Non Overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/) | ❌
| [✔️](c%2F0435-non-overlapping-intervals.c)
| [✔️](cpp%2F0435-non-overlapping-intervals.cpp)
| [✔️](csharp%2F0435-non-overlapping-intervals.cs)
| ❌
| [✔️](go%2F0435-non-overlapping-intervals.go)
| ❌
| [✔️](java%2F0435-non-overlapping-intervals.java)
| [✔️](javascript%2F0435-non-overlapping-intervals.js)
| [✔️](kotlin%2F0435-non-overlapping-intervals.kt)
| [✔️](python%2F0435-non-overlapping-intervals.py)
| ❌
| [✔️](rust%2F0435-non-overlapping-intervals.rs)
| [✔️](scala%2F0435-non-overlapping-intervals.scala)
| [✔️](swift%2F0435-non-overlapping-intervals.swift)
| [✔️](typescript%2F0435-non-overlapping-intervals.ts)
+[0252 - Meeting Rooms](https://leetcode.com/problems/meeting-rooms/) | ❌
| ❌
| [✔️](cpp%2F0252-meeting-rooms.cpp)
| [✔️](csharp%2F0252-meeting-rooms.cs)
| ❌
| [✔️](go%2F0252-meeting-rooms.go)
| ❌
| [✔️](java%2F0252-meeting-rooms.java)
| [✔️](javascript%2F0252-meeting-rooms.js)
| [✔️](kotlin%2F0252-meeting-rooms.kt)
| [✔️](python%2F0252-meeting-rooms.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F0252-meeting-rooms.swift)
| ❌
+[0253 - Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/) | ❌
| ❌
| [✔️](cpp%2F0253-meeting-rooms-ii.cpp)
| [✔️](csharp%2F0253-meeting-rooms-ii.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0253-meeting-rooms-ii.java)
| [✔️](javascript%2F0253-meeting-rooms-ii.js)
| [✔️](kotlin%2F0253-meeting-rooms-ii.kt)
| [✔️](python%2F0253-meeting-rooms-ii.py)
| ❌
| [✔️](rust%2F0253-meeting-rooms-ii.rs)
| ❌
| [✔️](swift%2F0253-meeting-rooms-ii.swift)
| ❌
+[1288 - Remove Covered Intervals](https://leetcode.com/problems/remove-covered-intervals/) | ❌
| [✔️](c%2F1288-Remove-Covered-Intervals.c)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1288-remove-covered-intervals.kt)
| [✔️](python%2F1288-remove-covered-intervals.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1851 - Minimum Interval to Include Each Query](https://leetcode.com/problems/minimum-interval-to-include-each-query/) | ❌
| ❌
| [✔️](cpp%2F1851-Minimum-Interval-To-Include-Each-Query.cpp)
| [✔️](csharp%2F1851-Minimum-Interval-to-Include-Each-Query.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F1851-Minimum-Interval-to-Include-Each-Query.java)
| [✔️](javascript%2F1851-minimum-interval-to-include-each-query.js)
| [✔️](kotlin%2F1851-minimum-interval-to-include-each-query.kt)
| [✔️](python%2F1851-minimum-interval-to-include-each-query.py)
| ❌
| ❌
| ❌
| [✔️](swift%2F1851-minimum-interval-to-include-each-query.swift)
| ❌
+[0352 - Data Stream as Disjoint Intervals](https://leetcode.com/problems/data-stream-as-disjoint-intervals/) | ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0352-data-stream-as-disjoint-intervals.go)
| ❌
| ❌
| [✔️](javascript%2F0352-data-stream-as-disjoint-intervals.js)
| [✔️](kotlin%2F0352-data-stream-as-disjoint-intervals.kt)
| ❌
| ❌
| [✔️](rust%2F0352-data-stream-as-disjoint-intervals.rs)
| ❌
| ❌
| [✔️](typescript%2F0352-data-stream-as-disjoint-intervals.ts)
### Math & Geometry
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0048 - Rotate Image](https://leetcode.com/problems/rotate-image/) | [✔️](c%2F0048-rotate-image.c)
| [✔️](cpp%2F0048-rotate-image.cpp)
| [✔️](csharp%2F0048-rotate-image.cs)
| ❌
| [✔️](go%2F0048-rotate-image.go)
| [✔️](java%2F0048-rotate-image.java)
| [✔️](javascript%2F0048-rotate-image.js)
| [✔️](kotlin%2F0048-rotate-image.kt)
| [✔️](python%2F0048-rotate-image.py)
| [✔️](ruby%2F0048-rotate-image.rb)
| [✔️](rust%2F0048-rotate-image.rs)
| ❌
| [✔️](swift%2F0048-rotate-image.swift)
| [✔️](typescript%2F0048-rotate-image.ts)
-[0054 - Spiral Matrix](https://leetcode.com/problems/spiral-matrix/) | ❌
| [✔️](cpp%2F0054-spiral-matrix.cpp)
| [✔️](csharp%2F0054-spiral-matrix.cs)
| ❌
| [✔️](go%2F0054-spiral-matrix.go)
| [✔️](java%2F0054-spiral-matrix.java)
| [✔️](javascript%2F0054-spiral-matrix.js)
| [✔️](kotlin%2F0054-spiral-matrix.kt)
| [✔️](python%2F0054-spiral-matrix.py)
| [✔️](ruby%2F0054-spiral-matrix.rb)
| ❌
| ❌
| ❌
| [✔️](typescript%2F0054-spiral-matrix.ts)
-[0073 - Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/) | [✔️](c%2F0073-set-matrix-zeroes.c)
| [✔️](cpp%2F0073-set-matrix-zeroes.cpp)
| [✔️](csharp%2F0073-set-matrix-zeroes.cs)
| ❌
| [✔️](go%2F0073-set-matrix-zeroes.go)
| [✔️](java%2F0073-set-matrix-zeroes.java)
| [✔️](javascript%2F0073-set-matrix-zeroes.js)
| [✔️](kotlin%2F0073-set-matrix-zeroes.kt)
| [✔️](python%2F0073-set-matrix-zeroes.py)
| [✔️](ruby%2F0073-set-matrix-zeroes.rb)
| ❌
| ❌
| ❌
| [✔️](typescript%2F0073-set-matrix-zeroes.ts)
-[0202 - Happy Number](https://leetcode.com/problems/happy-number/) | [✔️](c%2F0202-happy-number.c)
| [✔️](cpp%2F0202-happy-number.cpp)
| [✔️](csharp%2F0202-happy-number.cs)
| ❌
| [✔️](go%2F0202-happy-number.go)
| [✔️](java%2F0202-happy-number.java)
| [✔️](javascript%2F0202-happy-number.js)
| [✔️](kotlin%2F0202-happy-number.kt)
| [✔️](python%2F0202-happy-number.py)
| [✔️](ruby%2F0202-happy-number.rb)
| [✔️](rust%2F0202-happy-number.rs)
| ❌
| [✔️](swift%2F0202-happy-number.swift)
| [✔️](typescript%2F0202-happy-number.ts)
-[0066 - Plus One](https://leetcode.com/problems/plus-one/) | [✔️](c%2F0066-plus-one.c)
| [✔️](cpp%2F0066-plus-one.cpp)
| [✔️](csharp%2F0066-plus-one.cs)
| ❌
| [✔️](go%2F0066-plus-one.go)
| [✔️](java%2F0066-plus-one.java)
| [✔️](javascript%2F0066-plus-one.js)
| [✔️](kotlin%2F0066-plus-one.kt)
| [✔️](python%2F0066-plus-one.py)
| [✔️](ruby%2F0066-plus-one.rb)
| [✔️](rust%2F0066-plus-one.rs)
| ❌
| [✔️](swift%2F0066-plus-one.swift)
| [✔️](typescript%2F0066-plus-one.ts)
-[0009 - Palindrome Number](https://leetcode.com/problems/palindrome-number/) | [✔️](c%2F0009-palindrome-number.c)
| [✔️](cpp%2F0009-palindrome-number.cpp)
| ❌
| ❌
| [✔️](go%2F0009-palindrome-number.go)
| [✔️](java%2F0009-palindrome-number.java)
| [✔️](javascript%2F0009-palindrome-number.js)
| ❌
| [✔️](python%2F0009-palindrome-number.py)
| ❌
| [✔️](rust%2F0009-palindrome-number.rs)
| ❌
| [✔️](swift%2F0009-palindrome-number.swift)
| [✔️](typescript%2F0009-palindrome-number.ts)
-[0263 - Ugly Number](https://leetcode.com/problems/ugly-number/) | [✔️](c%2F0263-ugly-number.c)
| [✔️](cpp%2F0263-ugly-number.cpp)
| ❌
| ❌
| [✔️](go%2F0263-ugly-number.go)
| [✔️](java%2F0263-ugly-number.java)
| [✔️](javascript%2F0263-ugly-number.js)
| ❌
| [✔️](python%2F0263-ugly-number.py)
| ❌
| [✔️](rust%2F0263-ugly-number.rs)
| ❌
| [✔️](swift%2F0263-ugly-number.swift)
| [✔️](typescript%2F0263-ugly-number.ts)
-[1260 - Shift 2D Grid](https://leetcode.com/problems/shift-2d-grid/) | ❌
| [✔️](cpp%2F1260-shift-2d-grid.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F1260-shift-2d-grid.java)
| [✔️](javascript%2F1260-shift-2d-grid.js)
| ❌
| [✔️](python%2F1260-shift-2d-grid.py)
| ❌
| ❌
| ❌
| ❌
| ❌
-[0013 - Roman to Integer](https://leetcode.com/problems/roman-to-integer/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0013-roman-to-integer.go)
| [✔️](java%2F0013-roman-to-integer.java)
| [✔️](javascript%2F0013-roman-to-integer.js)
| ❌
| [✔️](python%2F0013-roman-to-integer.py)
| ❌
| [✔️](rust%2F0013-roman-to-integer.rs)
| ❌
| ❌
| [✔️](typescript%2F0013-roman-to-integer.ts)
-[0012 - Integer to Roman](https://leetcode.com/problems/integer-to-roman/) | ❌
| ❌
| ❌
| ❌
| [✔️](go%2F0012-integer-to-roman.go)
| ❌
| [✔️](javascript%2F0012-integer-to-roman.js)
| ❌
| [✔️](python%2F0012-integer-to-roman.py)
| ❌
| [✔️](rust%2F0012-integer-to-roman.rs)
| ❌
| ❌
| [✔️](typescript%2F0012-integer-to-roman.ts)
-[0050 - Pow(x, n)](https://leetcode.com/problems/powx-n/) | [✔️](c%2F0050-powx-n.c)
| [✔️](cpp%2F0050-powx-n.cpp)
| [✔️](csharp%2F0050-powx-n.cs)
| ❌
| ❌
| [✔️](java%2F0050-powx-n.java)
| [✔️](javascript%2F0050-powx-n.js)
| [✔️](kotlin%2F0050-powx-n.kt)
| [✔️](python%2F0050-powx-n.py)
| [✔️](ruby%2F0050-powx-n.rb)
| ❌
| ❌
| [✔️](swift%2F0050-powx-n.swift)
| [✔️](typescript%2F0050-powx-n.ts)
-[0043 - Multiply Strings](https://leetcode.com/problems/multiply-strings/) | ❌
| [✔️](cpp%2F0043-multiply-strings.cpp)
| [✔️](csharp%2F0043-multiply-strings.cs)
| ❌
| ❌
| [✔️](java%2F0043-multiply-strings.java)
| [✔️](javascript%2F0043-multiply-strings.js)
| [✔️](kotlin%2F0043-multiply-strings.kt)
| [✔️](python%2F0043-multiply-strings.py)
| [✔️](ruby%2F0043-multiply-strings.rb)
| ❌
| ❌
| [✔️](swift%2F0043-multiply-strings.swift)
| [✔️](typescript%2F0043-multiply-strings.ts)
-[2013 - Detect Squares](https://leetcode.com/problems/detect-squares/) | ❌
| [✔️](cpp%2F2013-Detect-Squares.cpp)
| [✔️](csharp%2F2013-Detect-Squares.cs)
| ❌
| ❌
| [✔️](java%2F2013-Detect-Squares.java)
| [✔️](javascript%2F2013-Detect-Squares.js)
| [✔️](kotlin%2F2013-detect-squares.kt)
| [✔️](python%2F2013-detect-squares.py)
| [✔️](ruby%2F2013-detect-squares.rb)
| [✔️](rust%2F2013-detect-squares.rs)
| ❌
| ❌
| ❌
-[1041 - Robot Bounded In Circle](https://leetcode.com/problems/robot-bounded-in-circle/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[0006 - Zigzag Conversion](https://leetcode.com/problems/zigzag-conversion/) | ❌
| [✔️](cpp%2F0006-zigzag-conversion.cpp)
| ❌
| ❌
| [✔️](go%2F0006-zigzag-conversion.go)
| [✔️](java%2F0006-zigzag-conversion.java)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
-[2028 - Find Missing Observations](https://leetcode.com/problems/find-missing-observations/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0168 - Excel Sheet Column Title](https://leetcode.com/problems/excel-sheet-column-title/) | ❌
| ❌
| ❌
| [✔️](csharp%2F0168-excel-sheet-column-title.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0168-excel-sheet-column-title.java)
| ❌
| [✔️](kotlin%2F0168-excel-sheet-column-title.kt)
| [✔️](python%2F0168-excel-sheet-column-title.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1071 - Greatest Common Divisor of Strings](https://leetcode.com/problems/greatest-common-divisor-of-strings/) | ❌
| ❌
| [✔️](cpp%2F1071-greatest-common-divisor-of-strings.cpp)
| ❌
| ❌
| [✔️](go%2F1071-greatest-common-divisor-of-strings.go)
| ❌
| [✔️](java%2F1071-greatest-common-divisor-of-strings.java)
| [✔️](javascript%2F1071-greatest-common-divisor-of-strings.js)
| [✔️](kotlin%2F1071-greatest-common-divisor-of-strings.kt)
| ❌
| ❌
| [✔️](rust%2F1071-greatest-common-divisor-of-strings.rs)
| ❌
| ❌
| [✔️](typescript%2F1071-greatest-common-divisor-of-strings.ts)
+[1523 - Count Odd Numbers in an Interval Range](https://leetcode.com/problems/count-odd-numbers-in-an-interval-range/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F1523-count-odd-numbers-in-an-interval-range.kt)
| [✔️](python%2F1523-count-odd-numbers-in-an-interval-range.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[1572 - Matrix Diagonal Sum](https://leetcode.com/problems/matrix-diagonal-sum/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1572-matrix-diagonal-sum.java)
| [✔️](javascript%2F1572-matrix-diagonal-sum.js)
| [✔️](kotlin%2F1572-matrix-diagonal-sum.kt)
| [✔️](python%2F1572-matrix-diagonal-sum.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0149 - Maximum Points on a Line](https://leetcode.com/problems/max-points-on-a-line/) | ❌
| ❌
| [✔️](cpp%2F0149-max-points-on-a-line.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0149-max-points-on-a-line.java)
| [✔️](javascript%2F0149-max-points-on-a-line.js)
| [✔️](kotlin%2F0149-max-points-on-a-line.kt)
| [✔️](python%2F0149-max-points-on-a-line.py)
| ❌
| [✔️](rust%2F0149-max-points-on-a-line.rs)
| ❌
| ❌
| [✔️](typescript%2F0149-max-points-on-a-line.ts)
+[0048 - Rotate Image](https://leetcode.com/problems/rotate-image/) | ❌
| [✔️](c%2F0048-rotate-image.c)
| [✔️](cpp%2F0048-rotate-image.cpp)
| [✔️](csharp%2F0048-rotate-image.cs)
| ❌
| [✔️](go%2F0048-rotate-image.go)
| ❌
| [✔️](java%2F0048-rotate-image.java)
| [✔️](javascript%2F0048-rotate-image.js)
| [✔️](kotlin%2F0048-rotate-image.kt)
| [✔️](python%2F0048-rotate-image.py)
| [✔️](ruby%2F0048-rotate-image.rb)
| [✔️](rust%2F0048-rotate-image.rs)
| ❌
| [✔️](swift%2F0048-rotate-image.swift)
| [✔️](typescript%2F0048-rotate-image.ts)
+[0054 - Spiral Matrix](https://leetcode.com/problems/spiral-matrix/) | ❌
| [✔️](c%2F0054-spiral-matrix.c)
| [✔️](cpp%2F0054-spiral-matrix.cpp)
| [✔️](csharp%2F0054-spiral-matrix.cs)
| ❌
| [✔️](go%2F0054-spiral-matrix.go)
| ❌
| [✔️](java%2F0054-spiral-matrix.java)
| [✔️](javascript%2F0054-spiral-matrix.js)
| [✔️](kotlin%2F0054-spiral-matrix.kt)
| [✔️](python%2F0054-spiral-matrix.py)
| [✔️](ruby%2F0054-spiral-matrix.rb)
| ❌
| ❌
| [✔️](swift%2F0054-spiral-matrix.swift)
| [✔️](typescript%2F0054-spiral-matrix.ts)
+[0059 - Spiral Matrix II ](https://leetcode.com/problems/spiral-matrix-ii/) | ❌
| ❌
| [✔️](cpp%2F0059-spiral-matrix-ii.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0059-spiral-matrix-ii.java)
| [✔️](javascript%2F0059-spiral-matrix-ii.js)
| [✔️](kotlin%2F0059-spiral-matrix-ii.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0073 - Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/) | ❌
| [✔️](c%2F0073-set-matrix-zeroes.c)
| [✔️](cpp%2F0073-set-matrix-zeroes.cpp)
| [✔️](csharp%2F0073-set-matrix-zeroes.cs)
| ❌
| [✔️](go%2F0073-set-matrix-zeroes.go)
| ❌
| [✔️](java%2F0073-set-matrix-zeroes.java)
| [✔️](javascript%2F0073-set-matrix-zeroes.js)
| [✔️](kotlin%2F0073-set-matrix-zeroes.kt)
| [✔️](python%2F0073-set-matrix-zeroes.py)
| [✔️](ruby%2F0073-set-matrix-zeroes.rb)
| ❌
| ❌
| [✔️](swift%2F0073-set-matrix-zeroes.swift)
| [✔️](typescript%2F0073-set-matrix-zeroes.ts)
+[0202 - Happy Number](https://leetcode.com/problems/happy-number/) | ❌
| [✔️](c%2F0202-happy-number.c)
| [✔️](cpp%2F0202-happy-number.cpp)
| [✔️](csharp%2F0202-happy-number.cs)
| ❌
| [✔️](go%2F0202-happy-number.go)
| ❌
| [✔️](java%2F0202-happy-number.java)
| [✔️](javascript%2F0202-happy-number.js)
| [✔️](kotlin%2F0202-happy-number.kt)
| [✔️](python%2F0202-happy-number.py)
| [✔️](ruby%2F0202-happy-number.rb)
| [✔️](rust%2F0202-happy-number.rs)
| ❌
| [✔️](swift%2F0202-happy-number.swift)
| [✔️](typescript%2F0202-happy-number.ts)
+[0066 - Plus One](https://leetcode.com/problems/plus-one/) | ❌
| [✔️](c%2F0066-plus-one.c)
| [✔️](cpp%2F0066-plus-one.cpp)
| [✔️](csharp%2F0066-plus-one.cs)
| ❌
| [✔️](go%2F0066-plus-one.go)
| ❌
| [✔️](java%2F0066-plus-one.java)
| [✔️](javascript%2F0066-plus-one.js)
| [✔️](kotlin%2F0066-plus-one.kt)
| [✔️](python%2F0066-plus-one.py)
| [✔️](ruby%2F0066-plus-one.rb)
| [✔️](rust%2F0066-plus-one.rs)
| ❌
| [✔️](swift%2F0066-plus-one.swift)
| [✔️](typescript%2F0066-plus-one.ts)
+[0009 - Palindrome Number](https://leetcode.com/problems/palindrome-number/) | ❌
| [✔️](c%2F0009-palindrome-number.c)
| [✔️](cpp%2F0009-palindrome-number.cpp)
| ❌
| ❌
| [✔️](go%2F0009-palindrome-number.go)
| ❌
| [✔️](java%2F0009-palindrome-number.java)
| [✔️](javascript%2F0009-palindrome-number.js)
| [✔️](kotlin%2F0009-palindrome-number.kt)
| [✔️](python%2F0009-palindrome-number.py)
| ❌
| [✔️](rust%2F0009-palindrome-number.rs)
| ❌
| [✔️](swift%2F0009-palindrome-number.swift)
| [✔️](typescript%2F0009-palindrome-number.ts)
+[0263 - Ugly Number](https://leetcode.com/problems/ugly-number/) | ❌
| [✔️](c%2F0263-ugly-number.c)
| [✔️](cpp%2F0263-ugly-number.cpp)
| ❌
| ❌
| [✔️](go%2F0263-ugly-number.go)
| ❌
| [✔️](java%2F0263-ugly-number.java)
| [✔️](javascript%2F0263-ugly-number.js)
| [✔️](kotlin%2F0263-ugly-number.kt)
| [✔️](python%2F0263-ugly-number.py)
| ❌
| [✔️](rust%2F0263-ugly-number.rs)
| ❌
| [✔️](swift%2F0263-ugly-number.swift)
| [✔️](typescript%2F0263-ugly-number.ts)
+[1260 - Shift 2D Grid](https://leetcode.com/problems/shift-2d-grid/) | ❌
| ❌
| [✔️](cpp%2F1260-shift-2d-grid.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1260-shift-2d-grid.java)
| [✔️](javascript%2F1260-shift-2d-grid.js)
| [✔️](kotlin%2F1260-shift-2d-grid.kt)
| [✔️](python%2F1260-shift-2d-grid.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[0013 - Roman to Integer](https://leetcode.com/problems/roman-to-integer/) | ❌
| [✔️](c%2F0013-roman-to-integer.c)
| [✔️](cpp%2F0013-roman-to-integer.cpp)
| ❌
| ❌
| [✔️](go%2F0013-roman-to-integer.go)
| ❌
| [✔️](java%2F0013-roman-to-integer.java)
| [✔️](javascript%2F0013-roman-to-integer.js)
| [✔️](kotlin%2F0013-roman-to-integer.kt)
| [✔️](python%2F0013-roman-to-integer.py)
| ❌
| [✔️](rust%2F0013-roman-to-integer.rs)
| ❌
| ❌
| [✔️](typescript%2F0013-roman-to-integer.ts)
+[0012 - Integer to Roman](https://leetcode.com/problems/integer-to-roman/) | ❌
| ❌
| [✔️](cpp%2F0012-integer-to-roman.cpp)
| ❌
| ❌
| [✔️](go%2F0012-integer-to-roman.go)
| ❌
| [✔️](java%2F0012-integer-to-roman.java)
| [✔️](javascript%2F0012-integer-to-roman.js)
| [✔️](kotlin%2F0012-integer-to-roman.kt)
| [✔️](python%2F0012-integer-to-roman.py)
| ❌
| [✔️](rust%2F0012-integer-to-roman.rs)
| ❌
| ❌
| [✔️](typescript%2F0012-integer-to-roman.ts)
+[0050 - Pow(x, n)](https://leetcode.com/problems/powx-n/) | ❌
| [✔️](c%2F0050-powx-n.c)
| [✔️](cpp%2F0050-powx-n.cpp)
| [✔️](csharp%2F0050-powx-n.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0050-powx-n.java)
| [✔️](javascript%2F0050-powx-n.js)
| [✔️](kotlin%2F0050-powx-n.kt)
| [✔️](python%2F0050-powx-n.py)
| [✔️](ruby%2F0050-powx-n.rb)
| [✔️](rust%2F0050-powx-n.rs)
| ❌
| [✔️](swift%2F0050-powx-n.swift)
| [✔️](typescript%2F0050-powx-n.ts)
+[0043 - Multiply Strings](https://leetcode.com/problems/multiply-strings/) | ❌
| [✔️](c%2F0043-multiply-strings.c)
| [✔️](cpp%2F0043-multiply-strings.cpp)
| [✔️](csharp%2F0043-multiply-strings.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F0043-multiply-strings.java)
| [✔️](javascript%2F0043-multiply-strings.js)
| [✔️](kotlin%2F0043-multiply-strings.kt)
| [✔️](python%2F0043-multiply-strings.py)
| [✔️](ruby%2F0043-multiply-strings.rb)
| [✔️](rust%2F0043-multiply-strings.rs)
| ❌
| [✔️](swift%2F0043-multiply-strings.swift)
| [✔️](typescript%2F0043-multiply-strings.ts)
+[2013 - Detect Squares](https://leetcode.com/problems/detect-squares/) | ❌
| ❌
| [✔️](cpp%2F2013-Detect-Squares.cpp)
| [✔️](csharp%2F2013-Detect-Squares.cs)
| ❌
| ❌
| ❌
| [✔️](java%2F2013-Detect-Squares.java)
| [✔️](javascript%2F2013-Detect-Squares.js)
| [✔️](kotlin%2F2013-detect-squares.kt)
| [✔️](python%2F2013-detect-squares.py)
| [✔️](ruby%2F2013-detect-squares.rb)
| [✔️](rust%2F2013-detect-squares.rs)
| ❌
| [✔️](swift%2F2013-detect-squares.swift)
| ❌
+[1041 - Robot Bounded In Circle](https://leetcode.com/problems/robot-bounded-in-circle/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F1041-robot-bounded-in-circle.java)
| ❌
| [✔️](kotlin%2F1041-robot-bounded-in-circle.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[0006 - Zigzag Conversion](https://leetcode.com/problems/zigzag-conversion/) | ❌
| ❌
| [✔️](cpp%2F0006-zigzag-conversion.cpp)
| ❌
| ❌
| [✔️](go%2F0006-zigzag-conversion.go)
| ❌
| [✔️](java%2F0006-zigzag-conversion.java)
| ❌
| [✔️](kotlin%2F0006-zigzag-conversion.kt)
| [✔️](python%2F0006-zigzag-conversion.py)
| ❌
| ❌
| ❌
| ❌
| ❌
+[2028 - Find Missing Observations](https://leetcode.com/problems/find-missing-observations/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](kotlin%2F2028-find-missing-observations.kt)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
### Bit Manipulation
-Problem | C | C++ | C# | Dart | GO | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
----- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
-[0136 - Single Number](https://leetcode.com/problems/single-number/) | [✔️](c%2F0136-single-number.c)
| [✔️](cpp%2F0136-single-number.cpp)
| [✔️](csharp%2F0136-single-number.cs)
| ❌
| [✔️](go%2F0136-single-number.go)
| [✔️](java%2F0136-single-number.java)
| [✔️](javascript%2F0136-single-number.js)
| [✔️](kotlin%2F0136-single-number.kt)
| [✔️](python%2F0136-single-number.py)
| [✔️](ruby%2F0136-single-number.rb)
| [✔️](rust%2F0136-single-number.rs)
| ❌
| [✔️](swift%2F0136-single-number.swift)
| [✔️](typescript%2F0136-single-number.ts)
-[0191 - Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/) | [✔️](c%2F0191-number-of-1-bits.c)
| [✔️](cpp%2F0191-number-of-1-bits.cpp)
| [✔️](csharp%2F0191-number-of-1-bits.cs)
| ❌
| [✔️](go%2F0191-number-of-1-bits.go)
| [✔️](java%2F0191-number-of-1-bits.java)
| [✔️](javascript%2F0191-number-of-1-bits.js)
| [✔️](kotlin%2F0191-number-of-1-bits.kt)
| [✔️](python%2F0191-number-of-1-bits.py)
| [✔️](ruby%2F0191-number-of-1-bits.rb)
| [✔️](rust%2F0191-number-of-1-bits.rs)
| ❌
| [✔️](swift%2F0191-number-of-1-bits.swift)
| [✔️](typescript%2F0191-number-of-1-bits.ts)
-[0338 - Counting Bits](https://leetcode.com/problems/counting-bits/) | [✔️](c%2F0338-counting-bits.c)
| [✔️](cpp%2F0338-counting-bits.cpp)
| [✔️](csharp%2F0338-counting-bits.cs)
| ❌
| [✔️](go%2F0338-counting-bits.go)
| [✔️](java%2F0338-counting-bits.java)
| [✔️](javascript%2F0338-counting-bits.js)
| [✔️](kotlin%2F0338-counting-bits.kt)
| [✔️](python%2F0338-counting-bits.py)
| [✔️](ruby%2F0338-counting-bits.rb)
| [✔️](rust%2F0338-counting-bits.rs)
| ❌
| [✔️](swift%2F0338-counting-bits.swift)
| [✔️](typescript%2F0338-counting-bits.ts)
-[0190 - Reverse Bits](https://leetcode.com/problems/reverse-bits/) | [✔️](c%2F0190-reverse-bits.c)
| [✔️](cpp%2F0190-reverse-bits.cpp)
| [✔️](csharp%2F0190-reverse-bits.cs)
| ❌
| [✔️](go%2F0190-reverse-bits.go)
| [✔️](java%2F0190-reverse-bits.java)
| [✔️](javascript%2F0190-reverse-bits.js)
| [✔️](kotlin%2F0190-reverse-bits.kt)
| [✔️](python%2F0190-reverse-bits.py)
| [✔️](ruby%2F0190-reverse-bits.rb)
| [✔️](rust%2F0190-reverse-bits.rs)
| ❌
| [✔️](swift%2F0190-reverse-bits.swift)
| [✔️](typescript%2F0190-reverse-bits.ts)
-[0268 - Missing Number](https://leetcode.com/problems/missing-number/) | [✔️](c%2F0268-missing-number.c)
| [✔️](cpp%2F0268-missing-number.cpp)
| [✔️](csharp%2F0268-missing-number.cs)
| ❌
| [✔️](go%2F0268-missing-number.go)
| [✔️](java%2F0268-missing-number.java)
| [✔️](javascript%2F0268-missing-number.js)
| [✔️](kotlin%2F0268-missing-number.kt)
| [✔️](python%2F0268-missing-number.py)
| [✔️](ruby%2F0268-missing-number.rb)
| [✔️](rust%2F0268-missing-number.rs)
| ❌
| [✔️](swift%2F0268-missing-number.swift)
| [✔️](typescript%2F0268-missing-number.ts)
-[0371 - Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/) | [✔️](c%2F0371-sum-of-two-integers.c)
| [✔️](cpp%2F0371-sum-of-two-integers.cpp)
| [✔️](csharp%2F0371-sum-of-two-integers.cs)
| ❌
| [✔️](go%2F0371-sum-of-two-integers.go)
| [✔️](java%2F0371-sum-of-two-integers.java)
| [✔️](javascript%2F0371-sum-of-two-integers.js)
| [✔️](kotlin%2F0371-sum-of-two-integers.kt)
| [✔️](python%2F0371-sum-of-two-integers.py)
| [✔️](ruby%2F0371-sum-of-two-integers.rb)
| [✔️](rust%2F0371-sum-of-two-integers.rs)
| ❌
| [✔️](swift%2F0371-sum-of-two-integers.swift)
| [✔️](typescript%2F0371-sum-of-two-integers.ts)
-[0007 - Reverse Integer](https://leetcode.com/problems/reverse-integer/) | [✔️](c%2F0007-reverse-integer.c)
| [✔️](cpp%2F0007-reverse-integer.cpp)
| [✔️](csharp%2F0007-reverse-integer.cs)
| ❌
| [✔️](go%2F0007-reverse-integer.go)
| [✔️](java%2F0007-reverse-integer.java)
| [✔️](javascript%2F0007-reverse-integer.js)
| [✔️](kotlin%2F0007-reverse-integer.kt)
| [✔️](python%2F0007-reverse-integer.py)
| [✔️](ruby%2F0007-reverse-integer.rb)
| [✔️](rust%2F0007-reverse-integer.rs)
| [✔️](scala%2F0007-reverse-integer.scala)
| [✔️](swift%2F0007-reverse-integer.swift)
| [✔️](typescript%2F0007-reverse-integer.ts)
-[0067 - Add Binary](https://leetcode.com/problems/add-binary/) | [✔️](c%2F0067-add-binary.c)
| [✔️](cpp%2F0067-Add-Binary.cpp)
| ❌
| ❌
| ❌
| [✔️](java%2F0067-Add-Binary.java)
| ❌
| [✔️](kotlin%2F0067-add-binary.kt)
| [✔️](python%2F0067-Add-Binary.py)
| ❌
| [✔️](rust%2F0067-add-binary.rs)
| ❌
| ❌
| ❌
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[0136 - Single Number](https://leetcode.com/problems/single-number/) | ❌
| [✔️](c%2F0136-single-number.c)
| [✔️](cpp%2F0136-single-number.cpp)
| [✔️](csharp%2F0136-single-number.cs)
| [✔️](dart%2F0136-single-number.dart)
| [✔️](go%2F0136-single-number.go)
| ❌
| [✔️](java%2F0136-single-number.java)
| [✔️](javascript%2F0136-single-number.js)
| [✔️](kotlin%2F0136-single-number.kt)
| [✔️](python%2F0136-single-number.py)
| [✔️](ruby%2F0136-single-number.rb)
| [✔️](rust%2F0136-single-number.rs)
| ❌
| [✔️](swift%2F0136-single-number.swift)
| [✔️](typescript%2F0136-single-number.ts)
+[0191 - Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/) | ❌
| [✔️](c%2F0191-number-of-1-bits.c)
| [✔️](cpp%2F0191-number-of-1-bits.cpp)
| [✔️](csharp%2F0191-number-of-1-bits.cs)
| ❌
| [✔️](go%2F0191-number-of-1-bits.go)
| ❌
| [✔️](java%2F0191-number-of-1-bits.java)
| [✔️](javascript%2F0191-number-of-1-bits.js)
| [✔️](kotlin%2F0191-number-of-1-bits.kt)
| [✔️](python%2F0191-number-of-1-bits.py)
| [✔️](ruby%2F0191-number-of-1-bits.rb)
| [✔️](rust%2F0191-number-of-1-bits.rs)
| ❌
| [✔️](swift%2F0191-number-of-1-bits.swift)
| [✔️](typescript%2F0191-number-of-1-bits.ts)
+[0338 - Counting Bits](https://leetcode.com/problems/counting-bits/) | ❌
| [✔️](c%2F0338-counting-bits.c)
| [✔️](cpp%2F0338-counting-bits.cpp)
| [✔️](csharp%2F0338-counting-bits.cs)
| ❌
| [✔️](go%2F0338-counting-bits.go)
| ❌
| [✔️](java%2F0338-counting-bits.java)
| [✔️](javascript%2F0338-counting-bits.js)
| [✔️](kotlin%2F0338-counting-bits.kt)
| [✔️](python%2F0338-counting-bits.py)
| [✔️](ruby%2F0338-counting-bits.rb)
| [✔️](rust%2F0338-counting-bits.rs)
| ❌
| [✔️](swift%2F0338-counting-bits.swift)
| [✔️](typescript%2F0338-counting-bits.ts)
+[0190 - Reverse Bits](https://leetcode.com/problems/reverse-bits/) | ❌
| [✔️](c%2F0190-reverse-bits.c)
| [✔️](cpp%2F0190-reverse-bits.cpp)
| [✔️](csharp%2F0190-reverse-bits.cs)
| ❌
| [✔️](go%2F0190-reverse-bits.go)
| ❌
| [✔️](java%2F0190-reverse-bits.java)
| [✔️](javascript%2F0190-reverse-bits.js)
| [✔️](kotlin%2F0190-reverse-bits.kt)
| [✔️](python%2F0190-reverse-bits.py)
| [✔️](ruby%2F0190-reverse-bits.rb)
| [✔️](rust%2F0190-reverse-bits.rs)
| ❌
| [✔️](swift%2F0190-reverse-bits.swift)
| [✔️](typescript%2F0190-reverse-bits.ts)
+[0268 - Missing Number](https://leetcode.com/problems/missing-number/) | ❌
| [✔️](c%2F0268-missing-number.c)
| [✔️](cpp%2F0268-missing-number.cpp)
| [✔️](csharp%2F0268-missing-number.cs)
| ❌
| [✔️](go%2F0268-missing-number.go)
| ❌
| [✔️](java%2F0268-missing-number.java)
| [✔️](javascript%2F0268-missing-number.js)
| [✔️](kotlin%2F0268-missing-number.kt)
| [✔️](python%2F0268-missing-number.py)
| [✔️](ruby%2F0268-missing-number.rb)
| [✔️](rust%2F0268-missing-number.rs)
| ❌
| [✔️](swift%2F0268-missing-number.swift)
| [✔️](typescript%2F0268-missing-number.ts)
+[1470 - Shuffle the Array](https://leetcode.com/problems/shuffle-the-array/) | ❌
| [✔️](c%2F1470-shuffle-the-array.c)
| [✔️](cpp%2F1470-shuffle-the-array.cpp)
| ❌
| ❌
| [✔️](go%2F1470-shuffle-the-array.go)
| ❌
| ❌
| [✔️](javascript%2F1470-shuffle-the-array.js)
| [✔️](kotlin%2F1470-shuffle-the-array.kt)
| ❌
| ❌
| [✔️](rust%2F1470-shuffle-the-array.rs)
| ❌
| ❌
| [✔️](typescript%2F1470-shuffle-the-array.ts)
+[0989 - Add to Array-Form of Integer](https://leetcode.com/problems/add-to-array-form-of-integer/) | ❌
| [✔️](c%2F0989-add-to-array-form-of-integer.c)
| ❌
| ❌
| ❌
| [✔️](go%2F0989-add-to-array-form-of-integer.go)
| ❌
| ❌
| [✔️](javascript%2F0989-add-to-array-form-of-integer.js)
| [✔️](kotlin%2F0989-add-to-array-form-of-integer.kt)
| ❌
| ❌
| [✔️](rust%2F0989-add-to-array-form-of-integer.rs)
| ❌
| ❌
| [✔️](typescript%2F0989-add-to-array-form-of-integer.ts)
+[0371 - Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/) | ❌
| [✔️](c%2F0371-sum-of-two-integers.c)
| [✔️](cpp%2F0371-sum-of-two-integers.cpp)
| [✔️](csharp%2F0371-sum-of-two-integers.cs)
| ❌
| [✔️](go%2F0371-sum-of-two-integers.go)
| ❌
| [✔️](java%2F0371-sum-of-two-integers.java)
| [✔️](javascript%2F0371-sum-of-two-integers.js)
| [✔️](kotlin%2F0371-sum-of-two-integers.kt)
| [✔️](python%2F0371-sum-of-two-integers.py)
| [✔️](ruby%2F0371-sum-of-two-integers.rb)
| [✔️](rust%2F0371-sum-of-two-integers.rs)
| ❌
| [✔️](swift%2F0371-sum-of-two-integers.swift)
| [✔️](typescript%2F0371-sum-of-two-integers.ts)
+[0007 - Reverse Integer](https://leetcode.com/problems/reverse-integer/) | ❌
| [✔️](c%2F0007-reverse-integer.c)
| [✔️](cpp%2F0007-reverse-integer.cpp)
| [✔️](csharp%2F0007-reverse-integer.cs)
| ❌
| [✔️](go%2F0007-reverse-integer.go)
| ❌
| [✔️](java%2F0007-reverse-integer.java)
| [✔️](javascript%2F0007-reverse-integer.js)
| [✔️](kotlin%2F0007-reverse-integer.kt)
| [✔️](python%2F0007-reverse-integer.py)
| [✔️](ruby%2F0007-reverse-integer.rb)
| [✔️](rust%2F0007-reverse-integer.rs)
| [✔️](scala%2F0007-reverse-integer.scala)
| [✔️](swift%2F0007-reverse-integer.swift)
| [✔️](typescript%2F0007-reverse-integer.ts)
+[0067 - Add Binary](https://leetcode.com/problems/add-binary/) | ❌
| [✔️](c%2F0067-add-binary.c)
| [✔️](cpp%2F0067-Add-Binary.cpp)
| ❌
| ❌
| ❌
| ❌
| [✔️](java%2F0067-Add-Binary.java)
| [✔️](javascript%2F0067-add-binary.js)
| [✔️](kotlin%2F0067-add-binary.kt)
| [✔️](python%2F0067-add-binary.py)
| ❌
| [✔️](rust%2F0067-add-binary.rs)
| ❌
| ❌
| [✔️](typescript%2F0067-add-binary.ts)
+
+### JavaScript
+
+Problem | articles | C | C++ | C# | Dart | GO | hints | Java | JS | Kotlin | Python | Ruby | Rust | Scala | Swift | TS
+---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ----
+[2667 - Create Hello World Function](https://leetcode.com/problems/create-hello-world-function/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2667-create-hello-world-function.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F2667-create-hello-world-function.ts)
+[2620 - Counter](https://leetcode.com/problems/counter/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2620-counter.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](typescript%2F2620-counter.ts)
+[2665 - Counter II](https://leetcode.com/problems/counter-ii/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2665-counter-ii.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2635 - Apply Transform over each Element in Array](https://leetcode.com/problems/apply-transform-over-each-element-in-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2635-apply-transform-over-each-element-in-array.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2634 - Filter Elements from Array](https://leetcode.com/problems/filter-elements-from-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2634-filter-elements-from-array.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2626 - Array Reduce Transformation](https://leetcode.com/problems/array-reduce-transformation/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2626-array-reduce-transformation.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2629 - Function Composition](https://leetcode.com/problems/function-composition/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2629-function-composition.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2666 - Allow One Function Call](https://leetcode.com/problems/allow-one-function-call/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2666-allow-one-function-call.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2623 - Memoize](https://leetcode.com/problems/memoize/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2623-memoize.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2632 - Curry](https://leetcode.com/problems/curry/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2632-curry.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2621 - Sleep](https://leetcode.com/problems/sleep/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2621-sleep.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2637 - Promise Time Limit](https://leetcode.com/problems/promise-time-limit/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2636 - Promise Pool](https://leetcode.com/problems/promise-pool/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2622 - Cache With Time Limit](https://leetcode.com/problems/cache-with-time-limit/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2627 - Debounce](https://leetcode.com/problems/debounce/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2627-debounce.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2676 - Throttle](https://leetcode.com/problems/throttle/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2628 - JSON Deep Equal](https://leetcode.com/problems/json-deep-equal/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| [✔️](javascript%2F2628-json-deep-equal.js)
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2633 - Convert Object to JSON String](https://leetcode.com/problems/convert-object-to-json-string/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2675 - Array of Objects to Matrix](https://leetcode.com/problems/array-of-objects-to-matrix/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2700 - Difference Between Two Objects](https://leetcode.com/problems/differences-between-two-objects/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2677 - Chunk Array](https://leetcode.com/problems/chunk-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2625 - Flatten Deeply Nested Array](https://leetcode.com/problems/flatten-deeply-nested-array/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2619 - Array Prototype Last](https://leetcode.com/problems/array-prototype-last/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2631 - Group By](https://leetcode.com/problems/group-by/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2618 - Check if Object Instance of Class](https://leetcode.com/problems/check-if-object-instance-of-class/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2693 - Call Function with Custom Context](https://leetcode.com/problems/call-function-with-custom-context/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2694 - Event Emitter](https://leetcode.com/problems/event-emitter/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2695 - Array Wrapper](https://leetcode.com/problems/array-wrapper/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2648 - Generate Fibonacci Sequence](https://leetcode.com/problems/generate-fibonacci-sequence/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
+[2649 - Nested Array Generator](https://leetcode.com/problems/nested-array-generator/) | ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
| ❌
diff --git a/articles/132-pattern.md b/articles/132-pattern.md
new file mode 100644
index 000000000..b0dc31957
--- /dev/null
+++ b/articles/132-pattern.md
@@ -0,0 +1,420 @@
+## 1. Brute Force
+
+::tabs-start
+
+```python
+class Solution:
+ def find132pattern(self, nums: List[int]) -> bool:
+ n = len(nums)
+
+ for k in range(2, n):
+ for j in range(k - 1, 0, -1):
+ if nums[j] <= nums[k]:
+ continue
+
+ for i in range(j - 1, -1, -1):
+ if nums[i] < nums[k]:
+ return True
+
+ return False
+```
+
+```java
+public class Solution {
+ public boolean find132pattern(int[] nums) {
+ int n = nums.length;
+
+ for (int k = 2; k < n; k++) {
+ for (int j = k - 1; j > 0; j--) {
+ if (nums[j] <= nums[k]) {
+ continue;
+ }
+
+ for (int i = j - 1; i >= 0; i--) {
+ if (nums[i] < nums[k]) {
+ return true;
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ bool find132pattern(vector& nums) {
+ int n = nums.size();
+
+ for (int k = 2; k < n; k++) {
+ for (int j = k - 1; j > 0; j--) {
+ if (nums[j] <= nums[k]) {
+ continue;
+ }
+
+ for (int i = j - 1; i >= 0; i--) {
+ if (nums[i] < nums[k]) {
+ return true;
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @return {boolean}
+ */
+ find132pattern(nums) {
+ let n = nums.length;
+
+ for (let k = 2; k < n; k++) {
+ for (let j = k - 1; j > 0; j--) {
+ if (nums[j] <= nums[k]) {
+ continue;
+ }
+
+ for (let i = j - 1; i >= 0; i--) {
+ if (nums[i] < nums[k]) {
+ return true;
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n ^ 2)$
+* Space complexity: $O(1)$
+
+---
+
+## 2. Stack
+
+::tabs-start
+
+```python
+class Solution:
+ def find132pattern(self, nums: List[int]) -> bool:
+ stack = [] # pair [num, minLeft], mono decreasing
+ curMin = nums[0]
+
+ for i in range(1, len(nums)):
+ while stack and nums[i] >= stack[-1][0]:
+ stack.pop()
+ if stack and nums[i] > stack[-1][1]:
+ return True
+
+ stack.append([nums[i], curMin])
+ curMin = min(curMin, nums[i])
+
+ return False
+```
+
+```java
+public class Solution {
+ public boolean find132pattern(int[] nums) {
+ Stack stack = new Stack<>(); // pair [num, minLeft]
+ int curMin = nums[0];
+
+ for (int i = 1; i < nums.length; i++) {
+ while (!stack.isEmpty() && nums[i] >= stack.peek()[0]) {
+ stack.pop();
+ }
+ if (!stack.isEmpty() && nums[i] > stack.peek()[1]) {
+ return true;
+ }
+
+ stack.push(new int[]{nums[i], curMin});
+ curMin = Math.min(curMin, nums[i]);
+ }
+
+ return false;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ bool find132pattern(vector& nums) {
+ stack> stack; // pair
+ int curMin = nums[0];
+
+ for (int i = 1; i < nums.size(); i++) {
+ while (!stack.empty() && nums[i] >= stack.top().first) {
+ stack.pop();
+ }
+ if (!stack.empty() && nums[i] > stack.top().second) {
+ return true;
+ }
+
+ stack.push({nums[i], curMin});
+ curMin = min(curMin, nums[i]);
+ }
+
+ return false;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @return {boolean}
+ */
+ find132pattern(nums) {
+ const stack = []; // pair [num, minLeft]
+ let curMin = nums[0];
+
+ for (let i = 1; i < nums.length; i++) {
+ while (stack.length > 0 && nums[i] >= stack[stack.length - 1][0]) {
+ stack.pop();
+ }
+ if (stack.length > 0 && nums[i] > stack[stack.length - 1][1]) {
+ return true;
+ }
+
+ stack.push([nums[i], curMin]);
+ curMin = Math.min(curMin, nums[i]);
+ }
+
+ return false;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n)$
+* Space complexity: $O(n)$
+
+---
+
+## 3. Stack (Optimal)
+
+::tabs-start
+
+```python
+class Solution:
+ def find132pattern(self, nums: List[int]) -> bool:
+ stack, k = [], float('-inf')
+
+ for i in range(len(nums) - 1, -1, -1):
+ if nums[i] < k:
+ return True
+
+ while stack and stack[-1] < nums[i]:
+ k = stack.pop()
+ stack.append(nums[i])
+
+ return False
+```
+
+```java
+public class Solution {
+ public boolean find132pattern(int[] nums) {
+ Stack stack = new Stack<>();
+ int k = Integer.MIN_VALUE;
+
+ for (int i = nums.length - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (!stack.isEmpty() && stack.peek() < nums[i]) {
+ k = stack.pop();
+ }
+ stack.push(nums[i]);
+ }
+
+ return false;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ bool find132pattern(vector& nums) {
+ stack stack;
+ int k = INT_MIN;
+
+ for (int i = nums.size() - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (!stack.empty() && stack.top() < nums[i]) {
+ k = stack.top();
+ stack.pop();
+ }
+ stack.push(nums[i]);
+ }
+
+ return false;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @return {boolean}
+ */
+ find132pattern(nums) {
+ const stack = [];
+ let k = -Infinity;
+
+ for (let i = nums.length - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (stack.length > 0 && stack[stack.length - 1] < nums[i]) {
+ k = stack.pop();
+ }
+ stack.push(nums[i]);
+ }
+
+ return false;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n)$
+* Space complexity: $O(n)$
+
+---
+
+## 4. Two Pointers
+
+::tabs-start
+
+```python
+class Solution:
+ def find132pattern(self, nums: List[int]) -> bool:
+ n = len(nums)
+ stkTop, k = n, float('-inf')
+
+ for i in range(n - 1, -1, -1):
+ if nums[i] < k:
+ return True
+
+ while stkTop < n and nums[i] > nums[stkTop]:
+ k = nums[stkTop]
+ stkTop += 1
+
+ stkTop -= 1
+ nums[stkTop] = nums[i]
+
+ return False
+```
+
+```java
+public class Solution {
+ public boolean find132pattern(int[] nums) {
+ int n = nums.length;
+ int stkTop = n;
+ int k = Integer.MIN_VALUE;
+
+ for (int i = n - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (stkTop < n && nums[i] > nums[stkTop]) {
+ k = nums[stkTop++];
+ }
+
+ nums[--stkTop] = nums[i];
+ }
+
+ return false;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ bool find132pattern(vector& nums) {
+ int n = nums.size();
+ int stkTop = n;
+ int k = INT_MIN;
+
+ for (int i = n - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (stkTop < n && nums[i] > nums[stkTop]) {
+ k = nums[stkTop++];
+ }
+
+ nums[--stkTop] = nums[i];
+ }
+
+ return false;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @return {boolean}
+ */
+ find132pattern(nums) {
+ const n = nums.length;
+ let stkTop = n;
+ let k = -Infinity;
+
+ for (let i = n - 1; i >= 0; i--) {
+ if (nums[i] < k) {
+ return true;
+ }
+
+ while (stkTop < n && nums[i] > nums[stkTop]) {
+ k = nums[stkTop++];
+ }
+
+ nums[--stkTop] = nums[i];
+ }
+
+ return false;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n)$
+* Space complexity: $O(1)$ extra space.
\ No newline at end of file
diff --git a/articles/4sum.md b/articles/4sum.md
new file mode 100644
index 000000000..b590cf39e
--- /dev/null
+++ b/articles/4sum.md
@@ -0,0 +1,810 @@
+## 1. Brute Force
+
+::tabs-start
+
+```python
+class Solution:
+ def fourSum(self, nums: List[int], target: int) -> List[List[int]]:
+ n = len(nums)
+ nums.sort()
+ res = set()
+
+ for a in range(n):
+ for b in range(a + 1, n):
+ for c in range(b + 1, n):
+ for d in range(c + 1, n):
+ if nums[a] + nums[b] + nums[c] + nums[d] == target:
+ res.add((nums[a], nums[b], nums[c], nums[d]))
+ return list(res)
+```
+
+```java
+public class Solution {
+ public List> fourSum(int[] nums, int target) {
+ int n = nums.length;
+ Arrays.sort(nums);
+ Set> res = new HashSet<>();
+
+ for (int a = 0; a < n; a++) {
+ for (int b = a + 1; b < n; b++) {
+ for (int c = b + 1; c < n; c++) {
+ for (int d = c + 1; d < n; d++) {
+ if (nums[a] + nums[b] + 0L + nums[c] + nums[d] == target) {
+ res.add(Arrays.asList(nums[a], nums[b], nums[c], nums[d]));
+ }
+ }
+ }
+ }
+ }
+
+ return new ArrayList<>(res);
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector> fourSum(vector& nums, int target) {
+ int n = nums.size();
+ sort(nums.begin(), nums.end());
+ set> res;
+
+ for (int a = 0; a < n; a++) {
+ for (int b = a + 1; b < n; b++) {
+ for (int c = b + 1; c < n; c++) {
+ for (int d = c + 1; d < n; d++) {
+ if (nums[a] + nums[b] + 0LL + nums[c] + nums[d] == target) {
+ res.insert({nums[a], nums[b], nums[c], nums[d]});
+ }
+ }
+ }
+ }
+ }
+
+ return vector>(res.begin(), res.end());
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @param {number} target
+ * @return {number[][]}
+ */
+ fourSum(nums, target) {
+ let n = nums.length;
+ nums.sort((a, b) => a - b);
+ let res = new Set();
+
+ for (let a = 0; a < n; a++) {
+ for (let b = a + 1; b < n; b++) {
+ for (let c = b + 1; c < n; c++) {
+ for (let d = c + 1; d < n; d++) {
+ if (nums[a] + nums[b] + nums[c] + nums[d] === target) {
+ res.add(JSON.stringify([nums[a], nums[b], nums[c], nums[d]]));
+ }
+ }
+ }
+ }
+ }
+
+ return Array.from(res).map(JSON.parse);
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> FourSum(int[] nums, int target) {
+ int n = nums.Length;
+ Array.Sort(nums);
+ HashSet<(int, int, int, int)> res = new HashSet<(int, int, int, int)>();
+
+ for (int a = 0; a < n; a++) {
+ for (int b = a + 1; b < n; b++) {
+ for (int c = b + 1; c < n; c++) {
+ for (int d = c + 1; d < n; d++) {
+ long sum = (long)nums[a] + nums[b] + nums[c] + nums[d];
+ if (sum == target) {
+ res.Add((nums[a], nums[b], nums[c], nums[d]));
+ }
+ }
+ }
+ }
+ }
+
+ var result = new List>();
+ foreach (var quad in res) {
+ result.Add(new List { quad.Item1, quad.Item2, quad.Item3, quad.Item4 });
+ }
+ return result;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n ^ 4)$
+* Space complexity: $O(m)$
+
+> Where $n$ is the size of the array $nums$ and $m$ is the number of quadruplets.
+
+---
+
+## 2. Hash Map
+
+::tabs-start
+
+```python
+class Solution:
+ def fourSum(self, nums: List[int], target: int) -> List[List[int]]:
+ nums.sort()
+ count = defaultdict(int)
+ for num in nums:
+ count[num] += 1
+
+ res = []
+ for i in range(len(nums)):
+ count[nums[i]] -= 1
+ if i > 0 and nums[i] == nums[i - 1]:
+ continue
+
+ for j in range(i + 1, len(nums)):
+ count[nums[j]] -= 1
+ if j > i + 1 and nums[j] == nums[j - 1]:
+ continue
+
+ for k in range(j + 1, len(nums)):
+ count[nums[k]] -= 1
+ if k > j + 1 and nums[k] == nums[k - 1]:
+ continue
+
+ fourth = target - (nums[i] + nums[j] + nums[k])
+ if count[fourth] > 0:
+ res.append([nums[i], nums[j], nums[k], fourth])
+
+ for k in range(j + 1, len(nums)):
+ count[nums[k]] += 1
+
+ for j in range(i + 1, len(nums)):
+ count[nums[j]] += 1
+
+ return res
+```
+
+```java
+public class Solution {
+ public List> fourSum(int[] nums, int target) {
+ Arrays.sort(nums);
+ Map count = new HashMap<>();
+ for (int num : nums) {
+ count.put(num, count.getOrDefault(num, 0) + 1);
+ }
+ List> res = new ArrayList<>();
+
+ for (int i = 0; i < nums.length; i++) {
+ count.put(nums[i], count.get(nums[i]) - 1);
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < nums.length; j++) {
+ count.put(nums[j], count.get(nums[j]) - 1);
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ for (int k = j + 1; k < nums.length; k++) {
+ count.put(nums[k], count.get(nums[k]) - 1);
+ if (k > j + 1 && nums[k] == nums[k - 1]) continue;
+
+ long fourth = target - (nums[i] + nums[j] + 0L + nums[k]);
+ if (fourth > Integer.MAX_VALUE || fourth < Integer.MIN_VALUE) {
+ continue;
+ }
+ if (count.getOrDefault((int) fourth, 0) > 0) {
+ res.add(Arrays.asList(nums[i], nums[j], nums[k], (int) fourth));
+ }
+ }
+
+ for (int k = j + 1; k < nums.length; k++) {
+ count.put(nums[k], count.get(nums[k]) + 1);
+ }
+ }
+
+ for (int j = i + 1; j < nums.length; j++) {
+ count.put(nums[j], count.get(nums[j]) + 1);
+ }
+ }
+
+ return res;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector> fourSum(vector& nums, int target) {
+ sort(nums.begin(), nums.end());
+ unordered_map count;
+ for (int num : nums) {
+ count[num]++;
+ }
+ vector> res;
+
+ for (int i = 0; i < nums.size(); i++) {
+ count[nums[i]]--;
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < nums.size(); j++) {
+ count[nums[j]]--;
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ for (int k = j + 1; k < nums.size(); k++) {
+ count[nums[k]]--;
+ if (k > j + 1 && nums[k] == nums[k - 1]) continue;
+
+ long long fourth = target - (nums[i] + nums[j] + 0LL + nums[k]);
+ if (fourth < INT_MIN || fourth > INT_MAX) continue;
+ if (count[fourth] > 0) {
+ res.push_back({nums[i], nums[j], nums[k], int(fourth)});
+ }
+ }
+
+ for (int k = j + 1; k < nums.size(); k++) {
+ count[nums[k]]++;
+ }
+ }
+
+ for (int j = i + 1; j < nums.size(); j++) {
+ count[nums[j]]++;
+ }
+ }
+
+ return res;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @param {number} target
+ * @return {number[][]}
+ */
+ fourSum(nums, target) {
+ nums.sort((a, b) => a - b);
+ const count = new Map();
+ for (const num of nums) {
+ count.set(num, (count.get(num) || 0) + 1);
+ }
+ const res = [];
+
+ for (let i = 0; i < nums.length; i++) {
+ count.set(nums[i], count.get(nums[i]) - 1);
+ if (i > 0 && nums[i] === nums[i - 1]) continue;
+
+ for (let j = i + 1; j < nums.length; j++) {
+ count.set(nums[j], count.get(nums[j]) - 1);
+ if (j > i + 1 && nums[j] === nums[j - 1]) continue;
+
+ for (let k = j + 1; k < nums.length; k++) {
+ count.set(nums[k], count.get(nums[k]) - 1);
+ if (k > j + 1 && nums[k] === nums[k - 1]) continue;
+
+ const fourth = target - (nums[i] + nums[j] + nums[k]);
+ if ((count.get(fourth) || 0) > 0) {
+ res.push([nums[i], nums[j], nums[k], fourth]);
+ }
+ }
+
+ for (let k = j + 1; k < nums.length; k++) {
+ count.set(nums[k], count.get(nums[k]) + 1);
+ }
+ }
+
+ for (let j = i + 1; j < nums.length; j++) {
+ count.set(nums[j], count.get(nums[j]) + 1);
+ }
+ }
+
+ return res;
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> FourSum(int[] nums, int target) {
+ Array.Sort(nums);
+ Dictionary count = new Dictionary();
+
+ foreach (int num in nums) {
+ if (!count.ContainsKey(num)) {
+ count[num] = 0;
+ }
+ count[num]++;
+ }
+
+ List> res = new List>();
+
+ for (int i = 0; i < nums.Length; i++) {
+ count[nums[i]]--;
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < nums.Length; j++) {
+ count[nums[j]]--;
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ for (int k = j + 1; k < nums.Length; k++) {
+ count[nums[k]]--;
+ if (k > j + 1 && nums[k] == nums[k - 1]) continue;
+
+ long fourth = (long)target - (long)nums[i] - (long)nums[j] - (long)nums[k];
+ if (fourth > int.MaxValue || fourth < int.MinValue) {
+ continue;
+ }
+
+ if (count.ContainsKey((int)fourth) && count[(int)fourth] > 0) {
+ res.Add(new List { nums[i], nums[j], nums[k], (int)fourth });
+ }
+ }
+
+ for (int k = j + 1; k < nums.Length; k++) {
+ count[nums[k]]++;
+ }
+ }
+
+ for (int j = i + 1; j < nums.Length; j++) {
+ count[nums[j]]++;
+ }
+ }
+
+ return res;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n ^ 3)$
+* Space complexity:
+ * $O(n)$ space for the hash map.
+ * $O(m)$ space for the output array.
+
+> Where $n$ is the size of the array $nums$ and $m$ is the number of quadruplets.
+
+---
+
+## 3. Two Pointers
+
+::tabs-start
+
+```python
+class Solution:
+ def fourSum(self, nums: List[int], target: int) -> List[List[int]]:
+ nums.sort()
+ n = len(nums)
+ res = []
+
+ for i in range(n):
+ if i > 0 and nums[i] == nums[i - 1]:
+ continue
+ for j in range(i + 1, n):
+ if j > i + 1 and nums[j] == nums[j - 1]:
+ continue
+ left, right = j + 1, n - 1
+ while left < right:
+ total = nums[i] + nums[j] + nums[left] + nums[right]
+ if total == target:
+ res.append([nums[i], nums[j], nums[left], nums[right]])
+ left += 1
+ right -= 1
+ while left < right and nums[left] == nums[left - 1]:
+ left += 1
+ while left < right and nums[right] == nums[right + 1]:
+ right -= 1
+ elif total < target:
+ left += 1
+ else:
+ right -= 1
+
+ return res
+```
+
+```java
+public class Solution {
+ public List> fourSum(int[] nums, int target) {
+ Arrays.sort(nums);
+ List> res = new ArrayList<>();
+ int n = nums.length;
+
+ for (int i = 0; i < n; i++) {
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < n; j++) {
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ int left = j + 1, right = n - 1;
+ while (left < right) {
+ long sum = (long) nums[i] + nums[j] + nums[left] + nums[right];
+ if (sum == target) {
+ res.add(Arrays.asList(nums[i], nums[j], nums[left], nums[right]));
+ left++;
+ right--;
+ while (left < right && nums[left] == nums[left - 1]) left++;
+ while (left < right && nums[right] == nums[right + 1]) right--;
+ } else if (sum < target) {
+ left++;
+ } else {
+ right--;
+ }
+ }
+ }
+ }
+ return res;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector> fourSum(vector& nums, int target) {
+ vector> res;
+ int n = nums.size();
+ sort(nums.begin(), nums.end());
+
+ for (int i = 0; i < n; i++) {
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < n; j++) {
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ int left = j + 1, right = n - 1;
+ while (left < right) {
+ long long sum = (long long) nums[i] + nums[j] + nums[left] + nums[right];
+ if (sum == target) {
+ res.push_back({nums[i], nums[j], nums[left], nums[right]});
+ left++;
+ right--;
+ while (left < right && nums[left] == nums[left - 1]) left++;
+ while (left < right && nums[right] == nums[right + 1]) right--;
+ } else if (sum < target) {
+ left++;
+ } else {
+ right--;
+ }
+ }
+ }
+ }
+ return res;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @param {number} target
+ * @return {number[][]}
+ */
+ fourSum(nums, target) {
+ nums.sort((a, b) => a - b);
+ const res = [];
+ const n = nums.length;
+
+ for (let i = 0; i < n; i++) {
+ if (i > 0 && nums[i] === nums[i - 1]) continue;
+
+ for (let j = i + 1; j < n; j++) {
+ if (j > i + 1 && nums[j] === nums[j - 1]) continue;
+
+ let left = j + 1, right = n - 1;
+ while (left < right) {
+ const sum = nums[i] + nums[j] + nums[left] + nums[right];
+ if (sum === target) {
+ res.push([nums[i], nums[j], nums[left], nums[right]]);
+ left++;
+ right--;
+ while (left < right && nums[left] === nums[left - 1]) left++;
+ while (left < right && nums[right] === nums[right + 1]) right--;
+ } else if (sum < target) {
+ left++;
+ } else {
+ right--;
+ }
+ }
+ }
+ }
+
+ return res;
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> FourSum(int[] nums, int target) {
+ Array.Sort(nums);
+ List> res = new List>();
+ int n = nums.Length;
+
+ for (int i = 0; i < n; i++) {
+ if (i > 0 && nums[i] == nums[i - 1]) continue;
+
+ for (int j = i + 1; j < n; j++) {
+ if (j > i + 1 && nums[j] == nums[j - 1]) continue;
+
+ int left = j + 1, right = n - 1;
+ while (left < right) {
+ long sum = (long)nums[i] + nums[j] + nums[left] + nums[right];
+ if (sum == target) {
+ res.Add(new List { nums[i], nums[j], nums[left], nums[right] });
+ left++;
+ right--;
+ while (left < right && nums[left] == nums[left - 1]) left++;
+ while (left < right && nums[right] == nums[right + 1]) right--;
+ } else if (sum < target) {
+ left++;
+ } else {
+ right--;
+ }
+ }
+ }
+ }
+
+ return res;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n ^ 3)$
+* Space complexity:
+ * $O(1)$ or $O(n)$ space depending on the sorting algorithm.
+ * $O(m)$ space for the output array.
+
+---
+
+## 4. K-Sum + Two Pointers
+
+::tabs-start
+
+```python
+class Solution:
+ def fourSum(self, nums: List[int], target: int) -> List[List[int]]:
+ nums.sort()
+ res, quad = [], []
+
+ def kSum(k, start, target):
+ if k == 2:
+ l, r = start, len(nums) - 1
+ while l < r:
+ if nums[l] + nums[r] < target:
+ l += 1
+ elif nums[l] + nums[r] > target:
+ r -= 1
+ else:
+ res.append(quad + [nums[l], nums[r]])
+ l += 1
+ r -= 1
+ while l < r and nums[l] == nums[l - 1]:
+ l += 1
+ while l < r and nums[r] == nums[r + 1]:
+ r -= 1
+ return
+
+ for i in range(start, len(nums) - k + 1):
+ if i > start and nums[i] == nums[i - 1]:
+ continue
+ quad.append(nums[i])
+ kSum(k - 1, i + 1, target - nums[i])
+ quad.pop()
+
+ kSum(4, 0, target)
+ return res
+```
+
+```java
+public class Solution {
+ private List> res;
+ private List quad;
+
+ public List> fourSum(int[] nums, int target) {
+ Arrays.sort(nums);
+ res = new ArrayList<>();
+ quad = new ArrayList<>();
+ kSum(nums, 4, 0, target);
+ return res;
+ }
+
+ private void kSum(int[] nums, int k, int start, long target) {
+ if (k == 2) {
+ int l = start, r = nums.length - 1;
+ while (l < r) {
+ long sum = nums[l] + nums[r];
+ if (sum < target) {
+ l++;
+ } else if (sum > target) {
+ r--;
+ } else {
+ res.add(new ArrayList<>(quad));
+ res.get(res.size() - 1).add(nums[l]);
+ res.get(res.size() - 1).add(nums[r]);
+ l++;
+ r--;
+ while (l < r && nums[l] == nums[l - 1]) l++;
+ while (l < r && nums[r] == nums[r + 1]) r--;
+ }
+ }
+ return;
+ }
+
+ for (int i = start; i < nums.length - k + 1; i++) {
+ if (i > start && nums[i] == nums[i - 1]) continue;
+ quad.add(nums[i]);
+ kSum(nums, k - 1, i + 1, target - nums[i]);
+ quad.remove(quad.size() - 1);
+ }
+ }
+}
+```
+
+```cpp
+class Solution {
+ vector> res;
+ vector quad;
+
+public:
+ vector> fourSum(vector& nums, int target) {
+ if (nums.size() < 4) return {};
+ sort(nums.begin(), nums.end());
+ kSum(nums, 4, 0, (long long) target);
+ return res;
+ }
+
+private:
+ void kSum(vector& nums, int k, int start, long long target) {
+ if (k == 2) {
+ int l = start, r = nums.size() - 1;
+ while (l < r) {
+ long long sum = (long long) nums[l] + nums[r];
+ if (sum < target) {
+ l++;
+ } else if (sum > target) {
+ r--;
+ } else {
+ quad.push_back(nums[l]);
+ quad.push_back(nums[r]);
+ res.push_back(quad);
+ quad.pop_back();
+ quad.pop_back();
+ l++;
+ r--;
+ while (l < r && nums[l] == nums[l - 1]) l++;
+ while (l < r && nums[r] == nums[r + 1]) r--;
+ }
+ }
+ return;
+ }
+
+ for (int i = start; i < nums.size() - k + 1; i++) {
+ if (i > start && nums[i] == nums[i - 1]) continue;
+ quad.push_back(nums[i]);
+ kSum(nums, k - 1, i + 1, target - nums[i]);
+ quad.pop_back();
+ }
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} nums
+ * @param {number} target
+ * @return {number[][]}
+ */
+ fourSum(nums, target) {
+ nums.sort((a, b) => a - b);
+ const res = [];
+ const quad = [];
+
+ const kSum = (k, start, target) => {
+ if (k === 2) {
+ let l = start, r = nums.length - 1;
+ while (l < r) {
+ const sum = nums[l] + nums[r];
+ if (sum < target) {
+ l++;
+ } else if (sum > target) {
+ r--;
+ } else {
+ res.push([...quad, nums[l], nums[r]]);
+ l++;
+ r--;
+ while (l < r && nums[l] === nums[l - 1]) l++;
+ while (l < r && nums[r] === nums[r + 1]) r--;
+ }
+ }
+ return;
+ }
+
+ for (let i = start; i < nums.length - k + 1; i++) {
+ if (i > start && nums[i] === nums[i - 1]) continue;
+ quad.push(nums[i]);
+ kSum(k - 1, i + 1, target - nums[i]);
+ quad.pop();
+ }
+ };
+
+ kSum(4, 0, target);
+ return res;
+ }
+}
+```
+
+```csharp
+public class Solution {
+ private List> res;
+ private List quad;
+
+ public List> FourSum(int[] nums, int target) {
+ Array.Sort(nums);
+ res = new List>();
+ quad = new List();
+ KSum(nums, 4, 0, target);
+ return res;
+ }
+
+ private void KSum(int[] nums, int k, int start, long target) {
+ if (k == 2) {
+ int l = start, r = nums.Length - 1;
+ while (l < r) {
+ long sum = (long)nums[l] + nums[r];
+ if (sum < target) {
+ l++;
+ } else if (sum > target) {
+ r--;
+ } else {
+ List newQuad = new List(quad);
+ newQuad.Add(nums[l]);
+ newQuad.Add(nums[r]);
+ res.Add(newQuad);
+ l++;
+ r--;
+ while (l < r && nums[l] == nums[l - 1]) l++;
+ while (l < r && nums[r] == nums[r + 1]) r--;
+ }
+ }
+ return;
+ }
+
+ for (int i = start; i < nums.Length - k + 1; i++) {
+ if (i > start && nums[i] == nums[i - 1]) continue;
+ quad.Add(nums[i]);
+ KSum(nums, k - 1, i + 1, target - nums[i]);
+ quad.RemoveAt(quad.Count - 1);
+ }
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(n ^ 3)$
+* Space complexity:
+ * $O(1)$ or $O(n)$ space depending on the sorting algorithm.
+ * $O(m)$ space for the output array.
\ No newline at end of file
diff --git a/articles/README.md b/articles/README.md
new file mode 100644
index 000000000..79d65db56
--- /dev/null
+++ b/articles/README.md
@@ -0,0 +1,6 @@
+# Article Guide
+
+1. Each article should be written in markdown. Exanple: [duplicate-integer.md](https://github.com/neetcode-gh/leetcode/blob/main/articles/duplicate-integer.md)
+2. At least one solution should be similar to a solution present in the NeetCode video. Ideally all solutions from the video are present.
+3. Add time & space complexity
+4. Cover all relevant solutions if possible.
diff --git a/articles/accounts-merge.md b/articles/accounts-merge.md
new file mode 100644
index 000000000..15b8e9881
--- /dev/null
+++ b/articles/accounts-merge.md
@@ -0,0 +1,1165 @@
+## 1. Depth First Search
+
+::tabs-start
+
+```python
+class Solution:
+ def accountsMerge(self, accounts: List[List[str]]) -> List[List[str]]:
+ n = len(accounts)
+ emailIdx = {} # email -> id
+ emails = [] # set of emails of all accounts
+ emailToAcc = {} # email_index -> account_Id
+
+ m = 0
+ for accId, a in enumerate(accounts):
+ for i in range(1, len(a)):
+ email = a[i]
+ if email in emailIdx:
+ continue
+ emails.append(email)
+ emailIdx[email] = m
+ emailToAcc[m] = accId
+ m += 1
+
+ adj = [[] for _ in range(m)]
+ for a in accounts:
+ for i in range(2, len(a)):
+ id1 = emailIdx[a[i]]
+ id2 = emailIdx[a[i - 1]]
+ adj[id1].append(id2)
+ adj[id2].append(id1)
+
+ emailGroup = defaultdict(list) # index of acc -> list of emails
+ visited = [False] * m
+ def dfs(node, accId):
+ visited[node] = True
+ emailGroup[accId].append(emails[node])
+ for nei in adj[node]:
+ if not visited[nei]:
+ dfs(nei, accId)
+
+ for i in range(m):
+ if not visited[i]:
+ dfs(i, emailToAcc[i])
+
+ res = []
+ for accId in emailGroup:
+ name = accounts[accId][0]
+ res.append([name] + sorted(emailGroup[accId]))
+
+ return res
+```
+
+```java
+public class Solution {
+ private Map emailIdx = new HashMap<>(); // email -> id
+ private List emails = new ArrayList<>(); // set of emails of all accounts
+ private Map emailToAcc = new HashMap<>(); // email_index -> account_Id
+ private List> adj;
+ private Map> emailGroup = new HashMap<>(); // index of acc -> list of emails
+ private boolean[] visited;
+
+ public List> accountsMerge(List> accounts) {
+ int n = accounts.size();
+ int m = 0;
+
+ // Build email index and mappings
+ for (int accId = 0; accId < n; accId++) {
+ List account = accounts.get(accId);
+ for (int i = 1; i < account.size(); i++) {
+ String email = account.get(i);
+ if (!emailIdx.containsKey(email)) {
+ emails.add(email);
+ emailIdx.put(email, m);
+ emailToAcc.put(m, accId);
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ adj = new ArrayList<>();
+ for (int i = 0; i < m; i++) {
+ adj.add(new ArrayList<>());
+ }
+ for (List account : accounts) {
+ for (int i = 2; i < account.size(); i++) {
+ int id1 = emailIdx.get(account.get(i));
+ int id2 = emailIdx.get(account.get(i - 1));
+ adj.get(id1).add(id2);
+ adj.get(id2).add(id1);
+ }
+ }
+
+ // Initialize visited array
+ visited = new boolean[m];
+
+ // DFS traversal
+ for (int i = 0; i < m; i++) {
+ if (!visited[i]) {
+ int accId = emailToAcc.get(i);
+ emailGroup.putIfAbsent(accId, new ArrayList<>());
+ dfs(i, accId);
+ }
+ }
+
+ // Build result
+ List> res = new ArrayList<>();
+ for (int accId : emailGroup.keySet()) {
+ List group = emailGroup.get(accId);
+ Collections.sort(group);
+ List merged = new ArrayList<>();
+ merged.add(accounts.get(accId).get(0));
+ merged.addAll(group);
+ res.add(merged);
+ }
+
+ return res;
+ }
+
+ private void dfs(int node, int accId) {
+ visited[node] = true;
+ emailGroup.get(accId).add(emails.get(node));
+ for (int neighbor : adj.get(node)) {
+ if (!visited[neighbor]) {
+ dfs(neighbor, accId);
+ }
+ }
+ }
+}
+```
+
+```cpp
+class Solution {
+ unordered_map emailIdx; // email -> id
+ vector emails; // set of emails of all accounts
+ unordered_map emailToAcc; // email_index -> account_Id
+ vector> adj;
+ unordered_map> emailGroup; // index of acc -> list of emails
+ vector visited;
+
+public:
+ vector> accountsMerge(vector>& accounts) {
+ int n = accounts.size();
+ int m = 0;
+
+ // Build email index and mappings
+ for (int accId = 0; accId < n; accId++) {
+ vector& account = accounts[accId];
+ for (int i = 1; i < account.size(); i++) {
+ string& email = account[i];
+ if (emailIdx.find(email) == emailIdx.end()) {
+ emails.push_back(email);
+ emailIdx[email] = m;
+ emailToAcc[m] = accId;
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ adj.resize(m);
+ for (auto& account : accounts) {
+ for (int i = 2; i < account.size(); i++) {
+ int id1 = emailIdx[account[i]];
+ int id2 = emailIdx[account[i - 1]];
+ adj[id1].push_back(id2);
+ adj[id2].push_back(id1);
+ }
+ }
+
+ visited.resize(m, false);
+ // DFS traversal
+ for (int i = 0; i < m; i++) {
+ if (!visited[i]) {
+ int accId = emailToAcc[i];
+ dfs(i, accId);
+ }
+ }
+
+ // Build result
+ vector> res;
+ for (auto& [accId, group] : emailGroup) {
+ sort(group.begin(), group.end());
+ vector merged;
+ merged.push_back(accounts[accId][0]);
+ merged.insert(merged.end(), group.begin(), group.end());
+ res.push_back(merged);
+ }
+
+ return res;
+ }
+
+private:
+ void dfs(int node, int& accId) {
+ visited[node] = true;
+ emailGroup[accId].push_back(emails[node]);
+ for (int& neighbor : adj[node]) {
+ if (!visited[neighbor]) {
+ dfs(neighbor, accId);
+ }
+ }
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string[][]} accounts
+ * @return {string[][]}
+ */
+ accountsMerge(accounts) {
+ const emailIdx = new Map(); // email -> id
+ const emails = []; // set of emails of all accounts
+ const emailToAcc = new Map(); // email_index -> account_Id
+ const adj = [];
+ const emailGroup = new Map(); // index of acc -> list of emails
+ let visited = [];
+
+ const n = accounts.length;
+ let m = 0;
+
+ // Build email index and mappings
+ for (let accId = 0; accId < n; accId++) {
+ const account = accounts[accId];
+ for (let i = 1; i < account.length; i++) {
+ const email = account[i];
+ if (!emailIdx.has(email)) {
+ emails.push(email);
+ emailIdx.set(email, m);
+ emailToAcc.set(m, accId);
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ for (let i = 0; i < m; i++) {
+ adj.push([]);
+ }
+ for (const account of accounts) {
+ for (let i = 2; i < account.length; i++) {
+ const id1 = emailIdx.get(account[i]);
+ const id2 = emailIdx.get(account[i - 1]);
+ adj[id1].push(id2);
+ adj[id2].push(id1);
+ }
+ }
+
+ // Initialize visited array
+ visited = Array(m).fill(false);
+
+ // DFS traversal
+ const dfs = (node, accId) => {
+ visited[node] = true;
+ emailGroup.get(accId).push(emails[node]);
+ for (const neighbor of adj[node]) {
+ if (!visited[neighbor]) {
+ dfs(neighbor, accId);
+ }
+ }
+ };
+
+ for (let i = 0; i < m; i++) {
+ if (!visited[i]) {
+ const accId = emailToAcc.get(i);
+ if (!emailGroup.has(accId)) {
+ emailGroup.set(accId, []);
+ }
+ dfs(i, accId);
+ }
+ }
+
+ // Build result
+ const res = [];
+ for (const [accId, group] of emailGroup.entries()) {
+ group.sort();
+ const merged = [accounts[accId][0], ...group];
+ res.push(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+```csharp
+public class Solution {
+ private Dictionary emailIdx = new Dictionary();
+ private List emails = new List();
+ private List> adj;
+ private bool[] visited;
+ private Dictionary> components = new Dictionary>();
+ private Dictionary componentName = new Dictionary();
+
+ public List> AccountsMerge(List> accounts) {
+ int m = 0;
+
+ for (int accId = 0; accId < accounts.Count; accId++) {
+ var account = accounts[accId];
+ for (int i = 1; i < account.Count; i++) {
+ string email = account[i];
+ if (!emailIdx.ContainsKey(email)) {
+ emailIdx[email] = m++;
+ emails.Add(email);
+ }
+ }
+ }
+
+ adj = new List>();
+ for (int i = 0; i < m; i++) adj.Add(new List());
+
+ foreach (var account in accounts) {
+ for (int i = 2; i < account.Count; i++) {
+ int u = emailIdx[account[i - 1]];
+ int v = emailIdx[account[i]];
+ adj[u].Add(v);
+ adj[v].Add(u);
+ }
+ }
+
+ visited = new bool[m];
+
+ foreach (var account in accounts) {
+ string name = account[0];
+ foreach (var email in account.Skip(1)) {
+ int idx = emailIdx[email];
+ if (!visited[idx]) {
+ components[idx] = new List();
+ componentName[idx] = name;
+ Dfs(idx, idx);
+ }
+ }
+ }
+
+ var res = new List>();
+ foreach (var kvp in components) {
+ var group = kvp.Value;
+ group.Sort(StringComparer.Ordinal);
+ var merged = new List { componentName[kvp.Key] };
+ merged.AddRange(group);
+ res.Add(merged);
+ }
+
+ return res;
+ }
+
+ private void Dfs(int node, int root) {
+ visited[node] = true;
+ components[root].Add(emails[node]);
+ foreach (int nei in adj[node]) {
+ if (!visited[nei]) {
+ Dfs(nei, root);
+ }
+ }
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O((n * m)\log (n * m))$
+* Space complexity: $O(n * m)$
+
+> Where $n$ is the number of accounts and $m$ is the number of emails.
+
+---
+
+## 2. Breadth First Search
+
+::tabs-start
+
+```python
+class Solution:
+ def accountsMerge(self, accounts: List[List[str]]) -> List[List[str]]:
+ n = len(accounts)
+ emailIdx = {} # email -> id
+ emails = [] # set of emails of all accounts
+ emailToAcc = {} # email_index -> account_Id
+
+ m = 0
+ for accId, a in enumerate(accounts):
+ for i in range(1, len(a)):
+ email = a[i]
+ if email in emailIdx:
+ continue
+ emails.append(email)
+ emailIdx[email] = m
+ emailToAcc[m] = accId
+ m += 1
+
+ adj = [[] for _ in range(m)]
+ for a in accounts:
+ for i in range(2, len(a)):
+ id1 = emailIdx[a[i]]
+ id2 = emailIdx[a[i - 1]]
+ adj[id1].append(id2)
+ adj[id2].append(id1)
+
+ emailGroup = defaultdict(list) # index of acc -> list of emails
+ visited = [False] * m
+
+ def bfs(start, accId):
+ queue = deque([start])
+ visited[start] = True
+ while queue:
+ node = queue.popleft()
+ emailGroup[accId].append(emails[node])
+ for nei in adj[node]:
+ if not visited[nei]:
+ visited[nei] = True
+ queue.append(nei)
+
+ for i in range(m):
+ if not visited[i]:
+ bfs(i, emailToAcc[i])
+
+ res = []
+ for accId in emailGroup:
+ name = accounts[accId][0]
+ res.append([name] + sorted(emailGroup[accId]))
+
+ return res
+```
+
+```java
+public class Solution {
+ private Map emailIdx = new HashMap<>(); // email -> id
+ private List emails = new ArrayList<>(); // set of emails of all accounts
+ private Map emailToAcc = new HashMap<>(); // email_index -> account_Id
+ private List> adj;
+ private Map> emailGroup = new HashMap<>(); // index of acc -> list of emails
+ private boolean[] visited;
+
+ public List> accountsMerge(List> accounts) {
+ int n = accounts.size();
+ int m = 0;
+
+ // Build email index and mappings
+ for (int accId = 0; accId < n; accId++) {
+ List account = accounts.get(accId);
+ for (int i = 1; i < account.size(); i++) {
+ String email = account.get(i);
+ if (!emailIdx.containsKey(email)) {
+ emails.add(email);
+ emailIdx.put(email, m);
+ emailToAcc.put(m, accId);
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ adj = new ArrayList<>();
+ for (int i = 0; i < m; i++) {
+ adj.add(new ArrayList<>());
+ }
+ for (List account : accounts) {
+ for (int i = 2; i < account.size(); i++) {
+ int id1 = emailIdx.get(account.get(i));
+ int id2 = emailIdx.get(account.get(i - 1));
+ adj.get(id1).add(id2);
+ adj.get(id2).add(id1);
+ }
+ }
+
+ // Initialize visited array
+ visited = new boolean[m];
+
+ // BFS traversal
+ for (int i = 0; i < m; i++) {
+ if (!visited[i]) {
+ int accId = emailToAcc.get(i);
+ emailGroup.putIfAbsent(accId, new ArrayList<>());
+ bfs(i, accId);
+ }
+ }
+
+ // Build result
+ List> res = new ArrayList<>();
+ for (int accId : emailGroup.keySet()) {
+ List group = emailGroup.get(accId);
+ Collections.sort(group);
+ List merged = new ArrayList<>();
+ merged.add(accounts.get(accId).get(0));
+ merged.addAll(group);
+ res.add(merged);
+ }
+
+ return res;
+ }
+
+ private void bfs(int start, int accId) {
+ Queue queue = new LinkedList<>();
+ queue.offer(start);
+ visited[start] = true;
+
+ while (!queue.isEmpty()) {
+ int node = queue.poll();
+ emailGroup.get(accId).add(emails.get(node));
+ for (int neighbor : adj.get(node)) {
+ if (!visited[neighbor]) {
+ visited[neighbor] = true;
+ queue.offer(neighbor);
+ }
+ }
+ }
+ }
+}
+```
+
+```cpp
+class Solution {
+ unordered_map emailIdx; // email -> id
+ vector emails; // set of emails of all accounts
+ unordered_map emailToAcc; // email_index -> account_Id
+ vector> adj;
+ unordered_map> emailGroup; // index of acc -> list of emails
+ vector visited;
+
+public:
+ vector> accountsMerge(vector>& accounts) {
+ int n = accounts.size();
+ int m = 0;
+
+ // Build email index and mappings
+ for (int accId = 0; accId < n; accId++) {
+ vector& account = accounts[accId];
+ for (int i = 1; i < account.size(); i++) {
+ string& email = account[i];
+ if (emailIdx.find(email) == emailIdx.end()) {
+ emails.push_back(email);
+ emailIdx[email] = m;
+ emailToAcc[m] = accId;
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ adj.resize(m);
+ for (auto& account : accounts) {
+ for (int i = 2; i < account.size(); i++) {
+ int id1 = emailIdx[account[i]];
+ int id2 = emailIdx[account[i - 1]];
+ adj[id1].push_back(id2);
+ adj[id2].push_back(id1);
+ }
+ }
+
+ visited.resize(m, false);
+ // BFS traversal
+ for (int i = 0; i < m; i++) {
+ if (!visited[i]) {
+ int accId = emailToAcc[i];
+ bfs(i, accId);
+ }
+ }
+
+ // Build result
+ vector> res;
+ for (auto& [accId, group] : emailGroup) {
+ sort(group.begin(), group.end());
+ vector merged;
+ merged.push_back(accounts[accId][0]);
+ merged.insert(merged.end(), group.begin(), group.end());
+ res.push_back(merged);
+ }
+
+ return res;
+ }
+
+private:
+ void bfs(int start, int accId) {
+ queue q;
+ q.push(start);
+ visited[start] = true;
+
+ while (!q.empty()) {
+ int node = q.front();
+ q.pop();
+ emailGroup[accId].push_back(emails[node]);
+ for (int& neighbor : adj[node]) {
+ if (!visited[neighbor]) {
+ visited[neighbor] = true;
+ q.push(neighbor);
+ }
+ }
+ }
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string[][]} accounts
+ * @return {string[][]}
+ */
+ accountsMerge(accounts) {
+ const emailIdx = new Map(); // email -> id
+ const emails = []; // set of emails of all accounts
+ const emailToAcc = new Map(); // email_index -> account_Id
+ const adj = [];
+ const emailGroup = new Map(); // index of acc -> list of emails
+ let visited = [];
+
+ const n = accounts.length;
+ let m = 0;
+
+ // Build email index and mappings
+ for (let accId = 0; accId < n; accId++) {
+ const account = accounts[accId];
+ for (let i = 1; i < account.length; i++) {
+ const email = account[i];
+ if (!emailIdx.has(email)) {
+ emails.push(email);
+ emailIdx.set(email, m);
+ emailToAcc.set(m, accId);
+ m++;
+ }
+ }
+ }
+
+ // Build adjacency list
+ for (let i = 0; i < m; i++) {
+ adj.push([]);
+ }
+ for (const account of accounts) {
+ for (let i = 2; i < account.length; i++) {
+ const id1 = emailIdx.get(account[i]);
+ const id2 = emailIdx.get(account[i - 1]);
+ adj[id1].push(id2);
+ adj[id2].push(id1);
+ }
+ }
+
+ // Initialize visited array
+ visited = Array(m).fill(false);
+
+ // BFS traversal
+ const bfs = (start, accId) => {
+ const queue = new Queue([start]);
+ visited[start] = true;
+
+ while (!queue.isEmpty()) {
+ const node = queue.pop();
+ emailGroup.get(accId).push(emails[node]);
+ for (const neighbor of adj[node]) {
+ if (!visited[neighbor]) {
+ visited[neighbor] = true;
+ queue.push(neighbor);
+ }
+ }
+ }
+ };
+
+ for (let i = 0; i < m; i++) {
+ if (!visited[i]) {
+ const accId = emailToAcc.get(i);
+ if (!emailGroup.has(accId)) {
+ emailGroup.set(accId, []);
+ }
+ bfs(i, accId);
+ }
+ }
+
+ // Build result
+ const res = [];
+ for (const [accId, group] of emailGroup.entries()) {
+ group.sort();
+ const merged = [accounts[accId][0], ...group];
+ res.push(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> AccountsMerge(List> accounts) {
+ int n = accounts.Count;
+ Dictionary emailIdx = new Dictionary();
+ List emails = new List();
+ Dictionary emailToAcc = new Dictionary();
+
+ int m = 0;
+ for (int accId = 0; accId < n; accId++) {
+ var account = accounts[accId];
+ for (int i = 1; i < account.Count; i++) {
+ string email = account[i];
+ if (!emailIdx.ContainsKey(email)) {
+ emailIdx[email] = m;
+ emails.Add(email);
+ emailToAcc[m] = accId;
+ m++;
+ }
+ }
+ }
+
+ List> adj = new List>();
+ for (int i = 0; i < m; i++) adj.Add(new List());
+
+ foreach (var account in accounts) {
+ for (int i = 2; i < account.Count; i++) {
+ int id1 = emailIdx[account[i]];
+ int id2 = emailIdx[account[i - 1]];
+ adj[id1].Add(id2);
+ adj[id2].Add(id1);
+ }
+ }
+
+ Dictionary> emailGroup = new Dictionary>();
+ bool[] visited = new bool[m];
+
+ void Bfs(int start, int accId) {
+ Queue queue = new Queue();
+ queue.Enqueue(start);
+ visited[start] = true;
+
+ if (!emailGroup.ContainsKey(accId))
+ emailGroup[accId] = new List();
+
+ while (queue.Count > 0) {
+ int node = queue.Dequeue();
+ emailGroup[accId].Add(emails[node]);
+
+ foreach (int nei in adj[node]) {
+ if (!visited[nei]) {
+ visited[nei] = true;
+ queue.Enqueue(nei);
+ }
+ }
+ }
+ }
+
+ for (int i = 0; i < m; i++) {
+ if (!visited[i]) {
+ Bfs(i, emailToAcc[i]);
+ }
+ }
+
+ List> res = new List>();
+ foreach (var kvp in emailGroup) {
+ int accId = kvp.Key;
+ string name = accounts[accId][0];
+ List merged = new List { name };
+ kvp.Value.Sort(StringComparer.Ordinal);
+ merged.AddRange(kvp.Value);
+ res.Add(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O((n * m)\log (n * m))$
+* Space complexity: $O(n * m)$
+
+> Where $n$ is the number of accounts and $m$ is the number of emails.
+
+---
+
+## 3. Disjoint Set Union
+
+::tabs-start
+
+```python
+class UnionFind:
+ def __init__(self, n):
+ self.par = [i for i in range(n)]
+ self.rank = [1] * n
+
+ def find(self, x):
+ while x != self.par[x]:
+ self.par[x] = self.par[self.par[x]]
+ x = self.par[x]
+ return x
+
+ def union(self, x1, x2):
+ p1, p2 = self.find(x1), self.find(x2)
+ if p1 == p2:
+ return False
+ if self.rank[p1] > self.rank[p2]:
+ self.par[p2] = p1
+ self.rank[p1] += self.rank[p2]
+ else:
+ self.par[p1] = p2
+ self.rank[p2] += self.rank[p1]
+ return True
+
+class Solution:
+ def accountsMerge(self, accounts: List[List[str]]) -> List[List[str]]:
+ uf = UnionFind(len(accounts))
+ emailToAcc = {} # email -> index of acc
+
+ for i, a in enumerate(accounts):
+ for e in a[1:]:
+ if e in emailToAcc:
+ uf.union(i, emailToAcc[e])
+ else:
+ emailToAcc[e] = i
+
+ emailGroup = defaultdict(list) # index of acc -> list of emails
+ for e, i in emailToAcc.items():
+ leader = uf.find(i)
+ emailGroup[leader].append(e)
+
+ res = []
+ for i, emails in emailGroup.items():
+ name = accounts[i][0]
+ res.append([name] + sorted(emailGroup[i]))
+ return res
+```
+
+```java
+class UnionFind {
+ private int[] parent;
+ private int[] rank;
+
+ public UnionFind(int n) {
+ parent = new int[n];
+ rank = new int[n];
+ for (int i = 0; i < n; i++) {
+ parent[i] = i;
+ rank[i] = 1;
+ }
+ }
+
+ public int find(int x) {
+ if (x != parent[x]) {
+ parent[x] = find(parent[x]);
+ }
+ return parent[x];
+ }
+
+ public boolean union(int x1, int x2) {
+ int p1 = find(x1);
+ int p2 = find(x2);
+ if (p1 == p2) {
+ return false;
+ }
+ if (rank[p1] > rank[p2]) {
+ parent[p2] = p1;
+ rank[p1] += rank[p2];
+ } else {
+ parent[p1] = p2;
+ rank[p2] += rank[p1];
+ }
+ return true;
+ }
+}
+
+public class Solution {
+ public List> accountsMerge(List> accounts) {
+ int n = accounts.size();
+ UnionFind uf = new UnionFind(n);
+ Map emailToAcc = new HashMap<>(); // email -> index of acc
+
+ // Build union-find structure
+ for (int i = 0; i < n; i++) {
+ List account = accounts.get(i);
+ for (int j = 1; j < account.size(); j++) {
+ String email = account.get(j);
+ if (emailToAcc.containsKey(email)) {
+ uf.union(i, emailToAcc.get(email));
+ } else {
+ emailToAcc.put(email, i);
+ }
+ }
+ }
+
+ // Group emails by leader account
+ Map> emailGroup = new HashMap<>(); // index of acc -> list of emails
+ for (Map.Entry entry : emailToAcc.entrySet()) {
+ String email = entry.getKey();
+ int accId = entry.getValue();
+ int leader = uf.find(accId);
+ emailGroup.putIfAbsent(leader, new ArrayList<>());
+ emailGroup.get(leader).add(email);
+ }
+
+ // Build result
+ List> res = new ArrayList<>();
+ for (Map.Entry> entry : emailGroup.entrySet()) {
+ int accId = entry.getKey();
+ List emails = entry.getValue();
+ Collections.sort(emails);
+ List merged = new ArrayList<>();
+ merged.add(accounts.get(accId).get(0)); // Add account name
+ merged.addAll(emails);
+ res.add(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+```cpp
+class UnionFind {
+ vector parent;
+ vector rank;
+
+public:
+ UnionFind(int n) {
+ parent.resize(n);
+ rank.resize(n, 1);
+ for (int i = 0; i < n; i++) {
+ parent[i] = i;
+ }
+ }
+
+ int find(int x) {
+ if (x != parent[x]) {
+ parent[x] = find(parent[x]);
+ }
+ return parent[x];
+ }
+
+ bool unionSets(int x1, int x2) {
+ int p1 = find(x1);
+ int p2 = find(x2);
+ if (p1 == p2) {
+ return false;
+ }
+ if (rank[p1] > rank[p2]) {
+ parent[p2] = p1;
+ rank[p1] += rank[p2];
+ } else {
+ parent[p1] = p2;
+ rank[p2] += rank[p1];
+ }
+ return true;
+ }
+};
+
+class Solution {
+public:
+ vector> accountsMerge(vector>& accounts) {
+ int n = accounts.size();
+ UnionFind uf(n);
+ unordered_map emailToAcc; // email -> index of acc
+
+ // Build union-find structure
+ for (int i = 0; i < n; i++) {
+ for (int j = 1; j < accounts[i].size(); j++) {
+ const string& email = accounts[i][j];
+ if (emailToAcc.count(email)) {
+ uf.unionSets(i, emailToAcc[email]);
+ } else {
+ emailToAcc[email] = i;
+ }
+ }
+ }
+
+ // Group emails by leader account
+ map> emailGroup; // index of acc -> list of emails
+ for (const auto& [email, accId] : emailToAcc) {
+ int leader = uf.find(accId);
+ emailGroup[leader].push_back(email);
+ }
+
+ // Build result
+ vector> res;
+ for (auto& [accId, emails] : emailGroup) {
+ sort(emails.begin(), emails.end());
+ vector merged;
+ merged.push_back(accounts[accId][0]);
+ merged.insert(merged.end(), emails.begin(), emails.end());
+ res.push_back(merged);
+ }
+
+ return res;
+ }
+};
+```
+
+```javascript
+class UnionFind {
+ /**
+ * @constructor
+ * @param {number} n
+ */
+ constructor(n) {
+ this.parent = Array.from({ length: n }, (_, i) => i);
+ this.rank = Array(n).fill(1);
+ }
+
+ /**
+ * @param {number} x
+ * @return {number}
+ */
+ find(x) {
+ if (x !== this.parent[x]) {
+ this.parent[x] = this.find(this.parent[x]);
+ }
+ return this.parent[x];
+ }
+
+ /**
+ * @param {number} x1
+ * @param {number} x2
+ * @return {boolean}
+ */
+ union(x1, x2) {
+ const p1 = this.find(x1);
+ const p2 = this.find(x2);
+ if (p1 === p2) {
+ return false;
+ }
+ if (this.rank[p1] > this.rank[p2]) {
+ this.parent[p2] = p1;
+ this.rank[p1] += this.rank[p2];
+ } else {
+ this.parent[p1] = p2;
+ this.rank[p2] += this.rank[p1];
+ }
+ return true;
+ }
+}
+
+class Solution {
+ /**
+ * @param {string[][]} accounts
+ * @return {string[][]}
+ */
+ accountsMerge(accounts) {
+ const n = accounts.length;
+ const uf = new UnionFind(n);
+ const emailToAcc = new Map(); // email -> index of acc
+
+ // Build union-find structure
+ for (let i = 0; i < n; i++) {
+ for (let j = 1; j < accounts[i].length; j++) {
+ const email = accounts[i][j];
+ if (emailToAcc.has(email)) {
+ uf.union(i, emailToAcc.get(email));
+ } else {
+ emailToAcc.set(email, i);
+ }
+ }
+ }
+
+ // Group emails by leader account
+ const emailGroup = new Map(); // index of acc -> list of emails
+ for (const [email, accId] of emailToAcc.entries()) {
+ const leader = uf.find(accId);
+ if (!emailGroup.has(leader)) {
+ emailGroup.set(leader, []);
+ }
+ emailGroup.get(leader).push(email);
+ }
+
+ // Build result
+ const res = [];
+ for (const [accId, emails] of emailGroup.entries()) {
+ emails.sort();
+ const merged = [accounts[accId][0], ...emails];
+ res.push(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+```csharp
+public class UnionFind {
+ private int[] parent;
+ private int[] rank;
+
+ public UnionFind(int n) {
+ parent = new int[n];
+ rank = new int[n];
+ for (int i = 0; i < n; i++) {
+ parent[i] = i;
+ rank[i] = 1;
+ }
+ }
+
+ public int Find(int x) {
+ if (x != parent[x]) {
+ parent[x] = Find(parent[x]);
+ }
+ return parent[x];
+ }
+
+ public bool Union(int x, int y) {
+ int rootX = Find(x);
+ int rootY = Find(y);
+
+ if (rootX == rootY) return false;
+
+ if (rank[rootX] > rank[rootY]) {
+ parent[rootY] = rootX;
+ rank[rootX] += rank[rootY];
+ } else {
+ parent[rootX] = rootY;
+ rank[rootY] += rank[rootX];
+ }
+
+ return true;
+ }
+}
+
+public class Solution {
+ public List> AccountsMerge(List> accounts) {
+ int n = accounts.Count;
+ UnionFind uf = new UnionFind(n);
+ Dictionary emailToAcc = new Dictionary();
+
+ for (int i = 0; i < n; i++) {
+ for (int j = 1; j < accounts[i].Count; j++) {
+ string email = accounts[i][j];
+ if (emailToAcc.ContainsKey(email)) {
+ uf.Union(i, emailToAcc[email]);
+ } else {
+ emailToAcc[email] = i;
+ }
+ }
+ }
+
+ Dictionary> emailGroup = new Dictionary>();
+ foreach (var kvp in emailToAcc) {
+ string email = kvp.Key;
+ int leader = uf.Find(kvp.Value);
+ if (!emailGroup.ContainsKey(leader)) {
+ emailGroup[leader] = new List();
+ }
+ emailGroup[leader].Add(email);
+ }
+
+ List> res = new List>();
+ foreach (var kvp in emailGroup) {
+ int accId = kvp.Key;
+ List emails = kvp.Value;
+ emails.Sort(StringComparer.Ordinal);
+ List merged = new List { accounts[accId][0] };
+ merged.AddRange(emails);
+ res.Add(merged);
+ }
+
+ return res;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O((n * m)\log (n * m))$
+* Space complexity: $O(n * m)$
+
+> Where $n$ is the number of accounts and $m$ is the number of emails.
\ No newline at end of file
diff --git a/articles/add-binary.md b/articles/add-binary.md
new file mode 100644
index 000000000..424adb990
--- /dev/null
+++ b/articles/add-binary.md
@@ -0,0 +1,240 @@
+## 1. Iteration
+
+::tabs-start
+
+```python
+class Solution:
+ def addBinary(self, a: str, b: str) -> str:
+ res = ""
+ carry = 0
+
+ a, b = a[::-1], b[::-1]
+ for i in range(max(len(a), len(b))):
+ digitA = ord(a[i]) - ord("0") if i < len(a) else 0
+ digitB = ord(b[i]) - ord("0") if i < len(b) else 0
+
+ total = digitA + digitB + carry
+ char = str(total % 2)
+ res = char + res
+ carry = total // 2
+
+ if carry:
+ res = "1" + res
+
+ return res
+```
+
+```java
+public class Solution {
+ public String addBinary(String a, String b) {
+ StringBuilder res = new StringBuilder();
+ int carry = 0;
+
+ StringBuilder sa = new StringBuilder(a).reverse();
+ StringBuilder sb = new StringBuilder(b).reverse();
+
+ for (int i = 0; i < Math.max(sa.length(), sb.length()); i++) {
+ int digitA = i < sa.length() ? sa.charAt(i) - '0' : 0;
+ int digitB = i < sb.length() ? sb.charAt(i) - '0' : 0;
+
+ int total = digitA + digitB + carry;
+ char c = (char)((total % 2) + '0');
+ res.append(c);
+ carry = total / 2;
+ }
+
+ if (carry > 0) {
+ res.append('1');
+ }
+
+ return res.reverse().toString();
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ string addBinary(string a, string b) {
+ string res = "";
+ int carry = 0;
+
+ reverse(a.begin(), a.end());
+ reverse(b.begin(), b.end());
+
+ for (int i = 0; i < max(a.length(), b.length()); i++) {
+ int digitA = i < a.length() ? a[i] - '0' : 0;
+ int digitB = i < b.length() ? b[i] - '0' : 0;
+
+ int total = digitA + digitB + carry;
+ char c = (total % 2) + '0';
+ res += c;
+ carry = total / 2;
+ }
+
+ if (carry) {
+ res += '1';
+ }
+ reverse(res.begin(), res.end());
+ return res;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string} a
+ * @param {string} b
+ * @return {string}
+ */
+ addBinary(a, b) {
+ let res = [];
+ let carry = 0;
+
+ a = a.split("").reverse().join("");
+ b = b.split("").reverse().join("");
+
+ for (let i = 0; i < Math.max(a.length, b.length); i++) {
+ const digitA = i < a.length ? a[i] - '0' : 0;
+ const digitB = i < b.length ? b[i] - '0' : 0;
+
+ const total = digitA + digitB + carry;
+ const char = (total % 2).toString();
+ res.push(char)
+ carry = Math.floor(total / 2);
+ }
+
+ if (carry) {
+ res.push('1');
+ }
+ res.reverse()
+ return res.join('');
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(max(m, n))$
+* Space complexity: $O(m + n)$
+
+> Where $m$ and $n$ are the lengths of the strings $a$ and $b$ respectively.
+
+---
+
+## 2. Iteration (Optimal)
+
+::tabs-start
+
+```python
+class Solution:
+ def addBinary(self, a: str, b: str) -> str:
+ res = []
+ carry = 0
+
+ i, j = len(a) - 1, len(b) - 1
+ while i >= 0 or j >= 0 or carry > 0:
+ digitA = int(a[i]) if i >= 0 else 0
+ digitB = int(b[j]) if j >= 0 else 0
+
+ total = digitA + digitB + carry
+ res.append(total % 2)
+ carry = total // 2
+
+ i -= 1
+ j -= 1
+
+ res.reverse()
+ return ''.join(map(str, res))
+```
+
+```java
+public class Solution {
+ public String addBinary(String a, String b) {
+ StringBuilder res = new StringBuilder();
+ int carry = 0;
+
+ int i = a.length() - 1, j = b.length() - 1;
+ while (i >= 0 || j >= 0 || carry > 0) {
+ int digitA = i >= 0 ? a.charAt(i) - '0' : 0;
+ int digitB = j >= 0 ? b.charAt(j) - '0' : 0;
+
+ int total = digitA + digitB + carry;
+ res.append(total % 2);
+ carry = total / 2;
+
+ i--;
+ j--;
+ }
+
+ return res.reverse().toString();
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ string addBinary(string a, string b) {
+ string res = "";
+ int carry = 0;
+
+ int i = a.size() - 1, j = b.size() - 1;
+ while (i >= 0 || j >= 0 || carry > 0) {
+ int digitA = i >= 0 ? a[i] - '0' : 0;
+ int digitB = j >= 0 ? b[j] - '0' : 0;
+
+ int total = digitA + digitB + carry;
+ res += (total % 2) + '0';
+ carry = total / 2;
+
+ i--;
+ j--;
+ }
+
+ reverse(res.begin(), res.end());
+ return res;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string} a
+ * @param {string} b
+ * @return {string}
+ */
+ addBinary(a, b) {
+ let res = [];
+ let carry = 0;
+
+ let i = a.length - 1, j = b.length - 1;
+ while (i >= 0 || j >= 0 || carry > 0) {
+ const digitA = i >= 0 ? a[i] - "0" : 0;
+ const digitB = j >= 0 ? b[j] - "0" : 0;
+
+ const total = digitA + digitB + carry;
+ res.push(total % 2);
+ carry = Math.floor(total / 2);
+
+ i--;
+ j--;
+ }
+ res.reverse()
+ return res.join('');
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(max(m, n))$
+* Space complexity: $O(max(m, n))$
+
+> Where $m$ and $n$ are the lengths of the strings $a$ and $b$ respectively.
\ No newline at end of file
diff --git a/articles/add-to-array-form-of-integer.md b/articles/add-to-array-form-of-integer.md
new file mode 100644
index 000000000..ecab6ca84
--- /dev/null
+++ b/articles/add-to-array-form-of-integer.md
@@ -0,0 +1,217 @@
+## 1. Reverse and Add
+
+::tabs-start
+
+```python
+class Solution:
+ def addToArrayForm(self, num: List[int], k: int) -> List[int]:
+ num.reverse()
+ i = 0
+ while k:
+ digit = k % 10
+ if i < len(num):
+ num[i] += digit
+ else:
+ num.append(digit)
+ carry = num[i] // 10
+ num[i] %= 10
+ k //= 10
+ k += carry
+ i += 1
+ num.reverse()
+ return num
+```
+
+```java
+public class Solution {
+ public List addToArrayForm(int[] num, int k) {
+ List result = new ArrayList<>();
+ for (int i = num.length - 1; i >= 0; i--) {
+ k += num[i];
+ result.add(k % 10);
+ k /= 10;
+ }
+ while (k > 0) {
+ result.add(k % 10);
+ k /= 10;
+ }
+ Collections.reverse(result);
+ return result;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector addToArrayForm(vector& num, int k) {
+ reverse(num.begin(), num.end());
+ int i = 0;
+ while (k) {
+ int digit = k % 10;
+ if (i < num.size()) {
+ num[i] += digit;
+ } else {
+ num.push_back(digit);
+ }
+ int carry = num[i] / 10;
+ num[i] %= 10;
+ k /= 10;
+ k += carry;
+ i++;
+ }
+ reverse(num.begin(), num.end());
+ return num;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} num
+ * @param {number} k
+ * @return {number[]}
+ */
+ addToArrayForm(num, k) {
+ num.reverse();
+ let i = 0;
+ while (k > 0) {
+ const digit = k % 10;
+ if (i < num.length) {
+ num[i] += digit;
+ } else {
+ num.push(digit);
+ }
+ const carry = Math.floor(num[i] / 10);
+ num[i] %= 10;
+ k = Math.floor(k / 10) + carry;
+ i++;
+ }
+ num.reverse();
+ return num;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(max(n, m))$
+* Space complexity: $O(n)$.
+
+> Where $n$ is the size of the array $num$ and $m$ is the number of digits in $k$.
+
+---
+
+## 2. Without Reverse()
+
+::tabs-start
+
+```python
+class Solution:
+ def addToArrayForm(self, num: List[int], k: int) -> List[int]:
+ from collections import deque
+ result = deque()
+ i = len(num) - 1
+ carry = 0
+
+ while i >= 0 or k > 0 or carry > 0:
+ digit = k % 10
+ sum_val = carry + (num[i] if i >= 0 else 0) + digit
+
+ result.appendleft(sum_val % 10)
+ carry = sum_val // 10
+
+ k //= 10
+ i -= 1
+
+ return list(result)
+```
+
+```java
+public class Solution {
+ public List addToArrayForm(int[] num, int k) {
+ LinkedList result = new LinkedList<>();
+ int carry = 0, i = num.length - 1;
+
+ while (i >= 0 || k > 0 || carry > 0) {
+ int digit = k % 10;
+ int sum = carry + (i >= 0 ? num[i] : 0) + digit;
+
+ result.addFirst(sum % 10);
+ carry = sum / 10;
+
+ k /= 10;
+ i--;
+ }
+
+ return result;
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector addToArrayForm(vector& num, int k) {
+ list result;
+ int carry = 0, i = num.size() - 1;
+
+ while (i >= 0 || k > 0 || carry > 0) {
+ int digit = k % 10;
+ int sum = carry + (i >= 0 ? num[i] : 0) + digit;
+
+ result.push_front(sum % 10);
+ carry = sum / 10;
+
+ k /= 10;
+ i--;
+ }
+
+ return vector(result.begin(), result.end());
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {number[]} num
+ * @param {number} k
+ * @return {number[]}
+ */
+ addToArrayForm(num, k) {
+ let res = new Deque();
+ let carry = 0, i = num.length - 1;
+
+ while (i >= 0 || k > 0 || carry > 0) {
+ const digit = k % 10;
+ const sum = carry + (i >= 0 ? num[i] : 0) + digit;
+
+ res.pushFront(sum % 10);
+ carry = Math.floor(sum / 10);
+
+ k = Math.floor(k / 10);
+ i--;
+ }
+
+ const resultArray = [];
+ while (!res.isEmpty()) {
+ resultArray.push(res.popFront());
+ }
+
+ return resultArray;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(max(n, m))$
+* Space complexity: $O(n)$
+
+> Where $n$ is the size of the array $num$ and $m$ is the number of digits in $k$.
\ No newline at end of file
diff --git a/articles/add-two-numbers.md b/articles/add-two-numbers.md
new file mode 100644
index 000000000..118adab49
--- /dev/null
+++ b/articles/add-two-numbers.md
@@ -0,0 +1,659 @@
+## 1. Recursion
+
+::tabs-start
+
+```python
+# Definition for singly-linked list.
+# class ListNode:
+# def __init__(self, val=0, next=None):
+# self.val = val
+# self.next = next
+
+class Solution:
+ def add(self, l1: Optional[ListNode], l2: Optional[ListNode], carry: int) -> Optional[ListNode]:
+ if not l1 and not l2 and carry == 0:
+ return None
+
+ v1 = l1.val if l1 else 0
+ v2 = l2.val if l2 else 0
+
+ carry, val = divmod(v1 + v2 + carry, 10)
+
+ next_node = self.add(
+ l1.next if l1 else None,
+ l2.next if l2 else None,
+ carry
+ )
+ return ListNode(val, next_node)
+
+ def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]:
+ return self.add(l1, l2, 0)
+```
+
+```java
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * int val;
+ * ListNode next;
+ * ListNode() {}
+ * ListNode(int val) { this.val = val; }
+ * ListNode(int val, ListNode next) { this.val = val; this.next = next; }
+ * }
+ */
+
+public class Solution {
+ public ListNode add(ListNode l1, ListNode l2, int carry) {
+ if (l1 == null && l2 == null && carry == 0) {
+ return null;
+ }
+
+ int v1 = 0;
+ int v2 = 0;
+ if (l1 != null) {
+ v1 = l1.val;
+ }
+ if (l2 != null) {
+ v2 = l2.val;
+ }
+
+ int sum = v1 + v2 + carry;
+ int newCarry = sum / 10;
+ int nodeValue = sum % 10;
+
+ ListNode nextNode = add(
+ (l1 != null) ? l1.next : null,
+ (l2 != null) ? l2.next : null,
+ newCarry
+ );
+
+ return new ListNode(nodeValue, nextNode);
+ }
+
+ public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
+ return add(l1, l2, 0);
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for singly-linked list.
+ * struct ListNode {
+ * int val;
+ * ListNode *next;
+ * ListNode() : val(0), next(nullptr) {}
+ * ListNode(int x) : val(x), next(nullptr) {}
+ * ListNode(int x, ListNode *next) : val(x), next(next) {}
+ * };
+ */
+
+class Solution {
+public:
+ ListNode* add(ListNode* l1, ListNode* l2, int carry) {
+ if (!l1 && !l2 && carry == 0) {
+ return nullptr;
+ }
+
+ int v1 = 0;
+ int v2 = 0;
+ if (l1) {
+ v1 = l1->val;
+ }
+ if (l2) {
+ v2 = l2->val;
+ }
+
+ int sum = v1 + v2 + carry;
+ int newCarry = sum / 10;
+ int nodeValue = sum % 10;
+
+ ListNode* nextNode = add(
+ (l1 ? l1->next : nullptr),
+ (l2 ? l2->next : nullptr),
+ newCarry
+ );
+
+ return new ListNode(nodeValue, nextNode);
+ }
+
+ ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
+ return add(l1, l2, 0);
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for singly-linked list.
+ * class ListNode {
+ * constructor(val = 0, next = null) {
+ * this.val = val;
+ * this.next = next;
+ * }
+ * }
+ */
+
+class Solution {
+ /**
+ * @param {ListNode} l1
+ * @param {ListNode} l2
+ * @param {number} carry
+ * @return {ListNode}
+ */
+ add(l1, l2, carry) {
+ if (!l1 && !l2 && carry === 0) {
+ return null;
+ }
+
+ let v1 = 0;
+ let v2 = 0;
+ if (l1) {
+ v1 = l1.val;
+ }
+ if (l2) {
+ v2 = l2.val;
+ }
+
+ let sum = v1 + v2 + carry;
+ let newCarry = Math.floor(sum / 10);
+ let nodeValue = sum % 10;
+
+ let nextNode = this.add(
+ (l1 ? l1.next : null),
+ (l2 ? l2.next : null),
+ newCarry
+ );
+
+ return new ListNode(nodeValue, nextNode);
+ }
+
+ /**
+ * @param {ListNode} l1
+ * @param {ListNode} l2
+ * @return {ListNode}
+ */
+ addTwoNumbers(l1, l2) {
+ return this.add(l1, l2, 0);
+ }
+}
+```
+
+```csharp
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * public int val;
+ * public ListNode next;
+ * public ListNode(int val=0, ListNode next=null) {
+ * this.val = val;
+ * this.next = next;
+ * }
+ * }
+ */
+
+public class Solution {
+ public ListNode Add(ListNode l1, ListNode l2, int carry) {
+ if (l1 == null && l2 == null && carry == 0) {
+ return null;
+ }
+
+ int v1 = 0;
+ int v2 = 0;
+ if (l1 != null) {
+ v1 = l1.val;
+ }
+ if (l2 != null) {
+ v2 = l2.val;
+ }
+
+ int sum = v1 + v2 + carry;
+ int newCarry = sum / 10;
+ int nodeValue = sum % 10;
+
+ ListNode nextNode = Add(
+ (l1 != null ? l1.next : null),
+ (l2 != null ? l2.next : null),
+ newCarry
+ );
+
+ return new ListNode(nodeValue) { next = nextNode };
+ }
+
+ public ListNode AddTwoNumbers(ListNode l1, ListNode l2) {
+ return Add(l1, l2, 0);
+ }
+}
+```
+
+```go
+/**
+ * Definition for singly-linked list.
+ * type ListNode struct {
+ * Val int
+ * Next *ListNode
+ * }
+ */
+func add(l1 *ListNode, l2 *ListNode, carry int) *ListNode {
+ if l1 == nil && l2 == nil && carry == 0 {
+ return nil
+ }
+
+ v1, v2 := 0, 0
+ if l1 != nil {
+ v1 = l1.Val
+ }
+ if l2 != nil {
+ v2 = l2.Val
+ }
+
+ sum := v1 + v2 + carry
+ carry, val := sum/10, sum%10
+
+ var nextNode *ListNode
+ nextL1 := l1
+ nextL2 := l2
+ if l1 != nil {
+ nextL1 = l1.Next
+ } else {
+ nextL1 = nil
+ }
+ if l2 != nil {
+ nextL2 = l2.Next
+ } else {
+ nextL2 = nil
+ }
+ nextNode = add(nextL1, nextL2, carry)
+
+ return &ListNode{Val: val, Next: nextNode}
+}
+
+func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode {
+ return add(l1, l2, 0)
+}
+```
+
+```kotlin
+/**
+ * Example:
+ * var li = ListNode(5)
+ * var v = li.`val`
+ * Definition for singly-linked list.
+ * class ListNode(var `val`: Int) {
+ * var next: ListNode? = null
+ * }
+ */
+class Solution {
+ private fun add(l1: ListNode?, l2: ListNode?, carry: Int): ListNode? {
+ if (l1 == null && l2 == null && carry == 0) return null
+
+ val v1 = l1?.`val` ?: 0
+ val v2 = l2?.`val` ?: 0
+ val sum = v1 + v2 + carry
+ val newCarry = sum / 10
+ val valNode = sum % 10
+
+ val nextNode = add(l1?.next, l2?.next, newCarry)
+ return ListNode(valNode).apply { next = nextNode }
+ }
+
+ fun addTwoNumbers(l1: ListNode?, l2: ListNode?): ListNode? {
+ return add(l1, l2, 0)
+ }
+}
+```
+
+```swift
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * public var val: Int
+ * public var next: ListNode?
+ * public init() { self.val = 0; self.next = nil; }
+ * public init(_ val: Int) { self.val = val; self.next = nil; }
+ * public init(_ val: Int, _ next: ListNode?) { self.val = val; self.next = next; }
+ * }
+ */
+class Solution {
+ private func add(_ l1: ListNode?, _ l2: ListNode?, _ carry: Int) -> ListNode? {
+ if l1 == nil && l2 == nil && carry == 0 {
+ return nil
+ }
+
+ let v1 = l1?.val ?? 0
+ let v2 = l2?.val ?? 0
+
+ let sum = v1 + v2 + carry
+ let newCarry = sum / 10
+ let val = sum % 10
+
+ let nextNode = add(l1?.next, l2?.next, newCarry)
+ return ListNode(val, nextNode)
+ }
+
+ func addTwoNumbers(_ l1: ListNode?, _ l2: ListNode?) -> ListNode? {
+ return add(l1, l2, 0)
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(m + n)$
+* Space complexity: $O(m + n)$
+
+> Where $m$ is the length of $l1$ and $n$ is the length of $l2$.
+
+---
+
+## 2. Iteration
+
+::tabs-start
+
+```python
+# Definition for singly-linked list.
+# class ListNode:
+# def __init__(self, val=0, next=None):
+# self.val = val
+# self.next = next
+
+class Solution:
+ def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]:
+ dummy = ListNode()
+ cur = dummy
+
+ carry = 0
+ while l1 or l2 or carry:
+ v1 = l1.val if l1 else 0
+ v2 = l2.val if l2 else 0
+
+ # new digit
+ val = v1 + v2 + carry
+ carry = val // 10
+ val = val % 10
+ cur.next = ListNode(val)
+
+ # update ptrs
+ cur = cur.next
+ l1 = l1.next if l1 else None
+ l2 = l2.next if l2 else None
+
+ return dummy.next
+```
+
+```java
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * int val;
+ * ListNode next;
+ * ListNode() {}
+ * ListNode(int val) { this.val = val; }
+ * ListNode(int val, ListNode next) { this.val = val; this.next = next; }
+ * }
+ */
+
+ class Solution {
+ public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
+ ListNode dummy = new ListNode();
+ ListNode cur = dummy;
+
+ int carry = 0;
+ while (l1 != null || l2 != null || carry != 0) {
+ int v1 = (l1 != null) ? l1.val : 0;
+ int v2 = (l2 != null) ? l2.val : 0;
+
+ int val = v1 + v2 + carry;
+ carry = val / 10;
+ val = val % 10;
+ cur.next = new ListNode(val);
+
+ cur = cur.next;
+ l1 = (l1 != null) ? l1.next : null;
+ l2 = (l2 != null) ? l2.next : null;
+ }
+
+ return dummy.next;
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for singly-linked list.
+ * struct ListNode {
+ * int val;
+ * ListNode *next;
+ * ListNode() : val(0), next(nullptr) {}
+ * ListNode(int x) : val(x), next(nullptr) {}
+ * ListNode(int x, ListNode *next) : val(x), next(next) {}
+ * };
+ */
+
+class Solution {
+public:
+ ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
+ ListNode* dummy = new ListNode();
+ ListNode* cur = dummy;
+
+ int carry = 0;
+ while (l1 != nullptr || l2 != nullptr || carry != 0) {
+ int v1 = (l1 != nullptr) ? l1->val : 0;
+ int v2 = (l2 != nullptr) ? l2->val : 0;
+
+ int val = v1 + v2 + carry;
+ carry = val / 10;
+ val = val % 10;
+ cur->next = new ListNode(val);
+
+ cur = cur->next;
+ l1 = (l1 != nullptr) ? l1->next : nullptr;
+ l2 = (l2 != nullptr) ? l2->next : nullptr;
+ }
+ ListNode* res = dummy->next;
+ delete dummy;
+ return res;
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for singly-linked list.
+ * class ListNode {
+ * constructor(val = 0, next = null) {
+ * this.val = val;
+ * this.next = next;
+ * }
+ * }
+ */
+
+class Solution {
+ /**
+ * @param {ListNode} l1
+ * @param {ListNode} l2
+ * @return {ListNode}
+ */
+ addTwoNumbers(l1, l2) {
+ const dummy = new ListNode();
+ let cur = dummy;
+
+ let carry = 0;
+ while (l1 || l2 || carry) {
+ const v1 = l1 ? l1.val : 0;
+ const v2 = l2 ? l2.val : 0;
+
+ let val = v1 + v2 + carry;
+ carry = Math.floor(val / 10);
+ val = val % 10;
+ cur.next = new ListNode(val);
+
+ cur = cur.next;
+ l1 = l1 ? l1.next : null;
+ l2 = l2 ? l2.next : null;
+ }
+
+ return dummy.next;
+ }
+}
+```
+
+```csharp
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * public int val;
+ * public ListNode next;
+ * public ListNode(int val=0, ListNode next=null) {
+ * this.val = val;
+ * this.next = next;
+ * }
+ * }
+ */
+
+public class Solution {
+ public ListNode AddTwoNumbers(ListNode l1, ListNode l2) {
+ ListNode dummy = new ListNode();
+ ListNode cur = dummy;
+
+ int carry = 0;
+ while (l1 != null || l2 != null || carry != 0) {
+ int v1 = (l1 != null) ? l1.val : 0;
+ int v2 = (l2 != null) ? l2.val : 0;
+
+ int val = v1 + v2 + carry;
+ carry = val / 10;
+ val = val % 10;
+ cur.next = new ListNode(val);
+
+ cur = cur.next;
+ l1 = (l1 != null) ? l1.next : null;
+ l2 = (l2 != null) ? l2.next : null;
+ }
+
+ return dummy.next;
+ }
+}
+```
+
+```go
+/**
+ * Definition for singly-linked list.
+ * type ListNode struct {
+ * Val int
+ * Next *ListNode
+ * }
+ */
+func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode {
+ dummy := &ListNode{}
+ cur := dummy
+ carry := 0
+
+ for l1 != nil || l2 != nil || carry != 0 {
+ v1 := 0
+ if l1 != nil {
+ v1 = l1.Val
+ l1 = l1.Next
+ }
+
+ v2 := 0
+ if l2 != nil {
+ v2 = l2.Val
+ l2 = l2.Next
+ }
+
+ val := v1 + v2 + carry
+ carry = val / 10
+ cur.Next = &ListNode{Val: val % 10}
+ cur = cur.Next
+ }
+
+ return dummy.Next
+}
+```
+
+```kotlin
+/**
+ * Example:
+ * var li = ListNode(5)
+ * var v = li.`val`
+ * Definition for singly-linked list.
+ * class ListNode(var `val`: Int) {
+ * var next: ListNode? = null
+ * }
+ */
+class Solution {
+ fun addTwoNumbers(l1: ListNode?, l2: ListNode?): ListNode? {
+ val dummy = ListNode(0)
+ var cur = dummy
+ var carry = 0
+
+ var p1 = l1
+ var p2 = l2
+
+ while (p1 != null || p2 != null || carry != 0) {
+ val v1 = p1?.`val` ?: 0
+ val v2 = p2?.`val` ?: 0
+
+ val sum = v1 + v2 + carry
+ carry = sum / 10
+ cur.next = ListNode(sum % 10)
+
+ cur = cur.next!!
+ p1 = p1?.next
+ p2 = p2?.next
+ }
+
+ return dummy.next
+ }
+}
+```
+
+```swift
+/**
+ * Definition for singly-linked list.
+ * public class ListNode {
+ * public var val: Int
+ * public var next: ListNode?
+ * public init() { self.val = 0; self.next = nil; }
+ * public init(_ val: Int) { self.val = val; self.next = nil; }
+ * public init(_ val: Int, _ next: ListNode?) { self.val = val; self.next = next; }
+ * }
+ */
+class Solution {
+ func addTwoNumbers(_ l1: ListNode?, _ l2: ListNode?) -> ListNode? {
+ let dummy = ListNode(0)
+ var cur = dummy
+ var l1 = l1, l2 = l2
+ var carry = 0
+
+ while l1 != nil || l2 != nil || carry != 0 {
+ let v1 = l1?.val ?? 0
+ let v2 = l2?.val ?? 0
+
+ let sum = v1 + v2 + carry
+ carry = sum / 10
+ let val = sum % 10
+ cur.next = ListNode(val)
+
+ cur = cur.next!
+ l1 = l1?.next
+ l2 = l2?.next
+ }
+ return dummy.next
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(m + n)$
+* Space complexity:
+ * $O(1)$ extra space.
+ * $O(max(m, n))$ for the output list.
+
+> Where $m$ is the length of $l1$ and $n$ is the length of $l2$.
\ No newline at end of file
diff --git a/articles/all-possible-full-binary-trees.md b/articles/all-possible-full-binary-trees.md
new file mode 100644
index 000000000..1e75b0293
--- /dev/null
+++ b/articles/all-possible-full-binary-trees.md
@@ -0,0 +1,693 @@
+## 1. Recursion
+
+::tabs-start
+
+```python
+# Definition for a binary tree node.
+# class TreeNode:
+# def __init__(self, val=0, left=None, right=None):
+# self.val = val
+# self.left = left
+# self.right = right
+class Solution:
+ def allPossibleFBT(self, n: int) -> List[Optional[TreeNode]]:
+ def backtrack(n):
+ if n == 0:
+ return []
+ if n == 1:
+ return [TreeNode(0)]
+
+ res = []
+ for l in range(n):
+ r = n - 1 - l
+ leftTrees, rightTrees = backtrack(l), backtrack(r)
+
+ for t1 in leftTrees:
+ for t2 in rightTrees:
+ res.append(TreeNode(0, t1, t2))
+ return res
+
+ return backtrack(n)
+```
+
+```java
+/**
+ * Definition for a binary tree node.
+ * public class TreeNode {
+ * int val;
+ * TreeNode left;
+ * TreeNode right;
+ * TreeNode() {}
+ * TreeNode(int val) { this.val = val; }
+ * TreeNode(int val, TreeNode left, TreeNode right) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+public class Solution {
+ public List allPossibleFBT(int n) {
+ return backtrack(n);
+ }
+
+ private List backtrack(int n) {
+ if (n == 0) {
+ return new ArrayList<>();
+ }
+ if (n == 1) {
+ return Arrays.asList(new TreeNode(0));
+ }
+
+ List res = new ArrayList<>();
+ for (int l = 0; l < n; l++) {
+ int r = n - 1 - l;
+ List leftTrees = backtrack(l);
+ List rightTrees = backtrack(r);
+
+ for (TreeNode t1 : leftTrees) {
+ for (TreeNode t2 : rightTrees) {
+ res.add(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ return res;
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for a binary tree node.
+ * struct TreeNode {
+ * int val;
+ * TreeNode *left;
+ * TreeNode *right;
+ * TreeNode() : val(0), left(nullptr), right(nullptr) {}
+ * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
+ * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
+ * };
+ */
+class Solution {
+public:
+ vector allPossibleFBT(int n) {
+ return backtrack(n);
+ }
+
+private:
+ vector backtrack(int n) {
+ if (n == 0) {
+ return {};
+ }
+ if (n == 1) {
+ return {new TreeNode(0)};
+ }
+
+ vector res;
+ for (int l = 0; l < n; l++) {
+ int r = n - 1 - l;
+ vector leftTrees = backtrack(l);
+ vector rightTrees = backtrack(r);
+
+ for (auto& t1 : leftTrees) {
+ for (auto& t2 : rightTrees) {
+ res.push_back(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ return res;
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for a binary tree node.
+ * class TreeNode {
+ * constructor(val = 0, left = null, right = null) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+class Solution {
+ /**
+ * @param {number} n
+ * @return {TreeNode[]}
+ */
+ allPossibleFBT(n) {
+ const backtrack = (n) => {
+ if (n === 0) {
+ return [];
+ }
+ if (n === 1) {
+ return [new TreeNode(0)];
+ }
+
+ let res = [];
+ for (let l = 0; l < n; l++) {
+ let r = n - 1 - l;
+ let leftTrees = backtrack(l);
+ let rightTrees = backtrack(r);
+
+ for (let t1 of leftTrees) {
+ for (let t2 of rightTrees) {
+ res.push(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ return res;
+ };
+
+ return backtrack(n);
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(2 ^ n)$
+* Space complexity: $O(n * 2 ^ n)$
+
+---
+
+## 2. Recursion (Optimal)
+
+::tabs-start
+
+```python
+# Definition for a binary tree node.
+# class TreeNode:
+# def __init__(self, val=0, left=None, right=None):
+# self.val = val
+# self.left = left
+# self.right = right
+class Solution:
+ def allPossibleFBT(self, n: int) -> List[Optional[TreeNode]]:
+ if n % 2 == 0:
+ return []
+ if n == 1:
+ return [TreeNode(0)]
+
+ res = []
+ for left in range(1, n, 2):
+ leftSubTree = self.allPossibleFBT(left)
+ rightSubTree = self.allPossibleFBT(n - 1 - left)
+ for l in leftSubTree:
+ for r in rightSubTree:
+ root = TreeNode(0, l, r)
+ res.append(root)
+ return res
+```
+
+```java
+/**
+ * Definition for a binary tree node.
+ * public class TreeNode {
+ * int val;
+ * TreeNode left;
+ * TreeNode right;
+ * TreeNode() {}
+ * TreeNode(int val) { this.val = val; }
+ * TreeNode(int val, TreeNode left, TreeNode right) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+public class Solution {
+ public List allPossibleFBT(int n) {
+ if (n % 2 == 0) {
+ return new ArrayList<>();
+ }
+ if (n == 1) {
+ return Arrays.asList(new TreeNode(0));
+ }
+
+ List res = new ArrayList<>();
+ for (int left = 1; left < n; left += 2) {
+ List leftSubTree = allPossibleFBT(left);
+ List rightSubTree = allPossibleFBT(n - 1 - left);
+ for (TreeNode l : leftSubTree) {
+ for (TreeNode r : rightSubTree) {
+ TreeNode root = new TreeNode(0, l, r);
+ res.add(root);
+ }
+ }
+ }
+ return res;
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for a binary tree node.
+ * struct TreeNode {
+ * int val;
+ * TreeNode *left;
+ * TreeNode *right;
+ * TreeNode() : val(0), left(nullptr), right(nullptr) {}
+ * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
+ * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
+ * };
+ */
+class Solution {
+public:
+ vector allPossibleFBT(int n) {
+ if (n % 2 == 0) {
+ return {};
+ }
+ if (n == 1) {
+ return {new TreeNode(0)};
+ }
+
+ vector res;
+ for (int left = 1; left < n; left += 2) {
+ vector leftSubTree = allPossibleFBT(left);
+ vector rightSubTree = allPossibleFBT(n - 1 - left);
+ for (auto& l : leftSubTree) {
+ for (auto& r : rightSubTree) {
+ TreeNode* root = new TreeNode(0, l, r);
+ res.push_back(root);
+ }
+ }
+ }
+ return res;
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for a binary tree node.
+ * class TreeNode {
+ * constructor(val = 0, left = null, right = null) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+class Solution {
+ /**
+ * @param {number} n
+ * @return {TreeNode[]}
+ */
+ allPossibleFBT(n) {
+ if (n % 2 === 0) {
+ return [];
+ }
+ if (n === 1) {
+ return [new TreeNode(0)];
+ }
+
+ let res = [];
+ for (let left = 1; left < n; left += 2) {
+ let leftSubTree = this.allPossibleFBT(left);
+ let rightSubTree = this.allPossibleFBT(n - 1 - left);
+ for (let l of leftSubTree) {
+ for (let r of rightSubTree) {
+ let root = new TreeNode(0, l, r);
+ res.push(root);
+ }
+ }
+ }
+ return res;
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(2 ^ n)$
+* Space complexity: $O(n * 2 ^ n)$
+
+---
+
+## 3. Dynamic Programming (Top-Down)
+
+::tabs-start
+
+```python
+# Definition for a binary tree node.
+# class TreeNode:
+# def __init__(self, val=0, left=None, right=None):
+# self.val = val
+# self.left = left
+# self.right = right
+class Solution:
+ def allPossibleFBT(self, n: int) -> List[Optional[TreeNode]]:
+ dp = {}
+
+ def dfs(n):
+ if n % 2 == 0:
+ return []
+ if n == 1:
+ return [TreeNode(0)]
+ if n in dp:
+ return dp[n]
+
+ res = []
+ for left in range(1, n, 2):
+ leftSubTree = dfs(left)
+ rightSubTree = dfs(n - 1 - left)
+ for l in leftSubTree:
+ for r in rightSubTree:
+ res.append(TreeNode(0, l, r))
+
+ dp[n] = res
+ return res
+
+ return dfs(n)
+```
+
+```java
+/**
+ * Definition for a binary tree node.
+ * public class TreeNode {
+ * int val;
+ * TreeNode left;
+ * TreeNode right;
+ * TreeNode() {}
+ * TreeNode(int val) { this.val = val; }
+ * TreeNode(int val, TreeNode left, TreeNode right) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+public class Solution {
+ private List[] dp;
+
+ public List allPossibleFBT(int n) {
+ dp = new ArrayList[n + 1];
+ return dfs(n);
+ }
+
+ private List dfs(int n) {
+ if (n % 2 == 0) {
+ return new ArrayList<>();
+ }
+ if (n == 1) {
+ return Arrays.asList(new TreeNode(0));
+ }
+ if (dp[n] != null) {
+ return dp[n];
+ }
+
+ List res = new ArrayList<>();
+ for (int left = 1; left < n; left += 2) {
+ List leftSubTree = dfs(left);
+ List rightSubTree = dfs(n - 1 - left);
+ for (TreeNode l : leftSubTree) {
+ for (TreeNode r : rightSubTree) {
+ res.add(new TreeNode(0, l, r));
+ }
+ }
+ }
+
+ return dp[n] = res;
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for a binary tree node.
+ * struct TreeNode {
+ * int val;
+ * TreeNode *left;
+ * TreeNode *right;
+ * TreeNode() : val(0), left(nullptr), right(nullptr) {}
+ * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
+ * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
+ * };
+ */
+class Solution {
+private:
+ vector> dp;
+
+public:
+ vector allPossibleFBT(int n) {
+ dp.resize(n + 1);
+ return dfs(n);
+ }
+
+ vector dfs(int n) {
+ if (n % 2 == 0) {
+ return {};
+ }
+ if (n == 1) {
+ return {new TreeNode(0)};
+ }
+ if (!dp[n].empty()) {
+ return dp[n];
+ }
+
+ vector res;
+ for (int left = 1; left < n; left += 2) {
+ vector leftSubTree = dfs(left);
+ vector rightSubTree = dfs(n - 1 - left);
+ for (auto& l : leftSubTree) {
+ for (auto& r : rightSubTree) {
+ res.push_back(new TreeNode(0, l, r));
+ }
+ }
+ }
+
+ return dp[n] = res;
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for a binary tree node.
+ * class TreeNode {
+ * constructor(val = 0, left = null, right = null) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+class Solution {
+ /**
+ * @param {number} n
+ * @return {TreeNode[]}
+ */
+ allPossibleFBT(n) {
+ let dp = new Array(n + 1);
+
+ const dfs = (n) => {
+ if (n % 2 === 0) {
+ return [];
+ }
+ if (n === 1) {
+ return [new TreeNode(0)];
+ }
+ if (dp[n]) {
+ return dp[n];
+ }
+
+ let res = [];
+ for (let left = 1; left < n; left += 2) {
+ let leftSubTree = dfs(left);
+ let rightSubTree = dfs(n - 1 - left);
+ for (let t1 of leftSubTree) {
+ for (let t2 of rightSubTree) {
+ res.push(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+
+ return (dp[n] = res);
+ };
+
+ return dfs(n);
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(2 ^ n)$
+* Space complexity: $O(n * 2 ^ n)$
+
+---
+
+## 4. Dynamic Programming (Bottom-Up)
+
+::tabs-start
+
+```python
+# Definition for a binary tree node.
+# class TreeNode:
+# def __init__(self, val=0, left=None, right=None):
+# self.val = val
+# self.left = left
+# self.right = right
+class Solution:
+ def allPossibleFBT(self, n: int) -> List[Optional[TreeNode]]:
+ if n % 2 == 0:
+ return []
+
+ dp = [[] for _ in range(n + 1)]
+ dp[1] = [TreeNode(0)]
+
+ for nodes in range(3, n + 1, 2):
+ res = []
+ for left in range(1, nodes, 2):
+ right = nodes - 1 - left
+ for t1 in dp[left]:
+ for t2 in dp[right]:
+ res.append(TreeNode(0, t1, t2))
+ dp[nodes] = res
+
+ return dp[n]
+```
+
+```java
+/**
+ * Definition for a binary tree node.
+ * public class TreeNode {
+ * int val;
+ * TreeNode left;
+ * TreeNode right;
+ * TreeNode() {}
+ * TreeNode(int val) { this.val = val; }
+ * TreeNode(int val, TreeNode left, TreeNode right) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+public class Solution {
+ public List allPossibleFBT(int n) {
+ if (n % 2 == 0) {
+ return new ArrayList<>();
+ }
+
+ List[] dp = new ArrayList[n + 1];
+ for (int i = 0; i <= n; i++) {
+ dp[i] = new ArrayList<>();
+ }
+ dp[1].add(new TreeNode(0));
+
+ for (int nodes = 3; nodes <= n; nodes += 2) {
+ List res = new ArrayList<>();
+ for (int left = 1; left < nodes; left += 2) {
+ int right = nodes - 1 - left;
+ for (TreeNode t1 : dp[left]) {
+ for (TreeNode t2 : dp[right]) {
+ res.add(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ dp[nodes] = res;
+ }
+
+ return dp[n];
+ }
+}
+```
+
+```cpp
+/**
+ * Definition for a binary tree node.
+ * struct TreeNode {
+ * int val;
+ * TreeNode *left;
+ * TreeNode *right;
+ * TreeNode() : val(0), left(nullptr), right(nullptr) {}
+ * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
+ * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
+ * };
+ */
+class Solution {
+public:
+ vector allPossibleFBT(int n) {
+ if (n % 2 == 0) {
+ return {};
+ }
+
+ vector> dp(n + 1);
+ dp[1].push_back(new TreeNode(0));
+
+ for (int nodes = 3; nodes <= n; nodes += 2) {
+ vector res;
+ for (int left = 1; left < nodes; left += 2) {
+ int right = nodes - 1 - left;
+ for (auto& t1 : dp[left]) {
+ for (auto& t2 : dp[right]) {
+ res.push_back(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ dp[nodes] = res;
+ }
+
+ return dp[n];
+ }
+};
+```
+
+```javascript
+/**
+ * Definition for a binary tree node.
+ * class TreeNode {
+ * constructor(val = 0, left = null, right = null) {
+ * this.val = val;
+ * this.left = left;
+ * this.right = right;
+ * }
+ * }
+ */
+class Solution {
+ /**
+ * @param {number} n
+ * @return {TreeNode[]}
+ */
+ allPossibleFBT(n) {
+ if (n % 2 === 0) {
+ return [];
+ }
+
+ let dp = Array.from({ length: n + 1 }, () => []);
+ dp[1] = [new TreeNode(0)];
+
+ for (let nodes = 3; nodes <= n; nodes += 2) {
+ let res = [];
+ for (let left = 1; left < nodes; left += 2) {
+ let right = nodes - 1 - left;
+ for (let t1 of dp[left]) {
+ for (let t2 of dp[right]) {
+ res.push(new TreeNode(0, t1, t2));
+ }
+ }
+ }
+ dp[nodes] = res;
+ }
+
+ return dp[n];
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(2 ^ n)$
+* Space complexity: $O(n * 2 ^ n)$
\ No newline at end of file
diff --git a/articles/anagram-groups.md b/articles/anagram-groups.md
new file mode 100644
index 000000000..bf41aaa79
--- /dev/null
+++ b/articles/anagram-groups.md
@@ -0,0 +1,322 @@
+## 1. Sorting
+
+::tabs-start
+
+```python
+class Solution:
+ def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
+ res = defaultdict(list)
+ for s in strs:
+ sortedS = ''.join(sorted(s))
+ res[sortedS].append(s)
+ return list(res.values())
+```
+
+```java
+public class Solution {
+ public List> groupAnagrams(String[] strs) {
+ Map> res = new HashMap<>();
+ for (String s : strs) {
+ char[] charArray = s.toCharArray();
+ Arrays.sort(charArray);
+ String sortedS = new String(charArray);
+ res.putIfAbsent(sortedS, new ArrayList<>());
+ res.get(sortedS).add(s);
+ }
+ return new ArrayList<>(res.values());
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector> groupAnagrams(vector& strs) {
+ unordered_map> res;
+ for (const auto& s : strs) {
+ string sortedS = s;
+ sort(sortedS.begin(), sortedS.end());
+ res[sortedS].push_back(s);
+ }
+ vector> result;
+ for (auto& pair : res) {
+ result.push_back(pair.second);
+ }
+ return result;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string[]} strs
+ * @return {string[][]}
+ */
+ groupAnagrams(strs) {
+ const res = {};
+ for (let s of strs) {
+ const sortedS = s.split('').sort().join('');
+ if (!res[sortedS]) {
+ res[sortedS] = [];
+ }
+ res[sortedS].push(s);
+ }
+ return Object.values(res);
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> GroupAnagrams(string[] strs) {
+ var res = new Dictionary>();
+ foreach (var s in strs) {
+ char[] charArray = s.ToCharArray();
+ Array.Sort(charArray);
+ string sortedS = new string(charArray);
+ if (!res.ContainsKey(sortedS)) {
+ res[sortedS] = new List();
+ }
+ res[sortedS].Add(s);
+ }
+ return res.Values.ToList>();
+ }
+}
+```
+
+```go
+func groupAnagrams(strs []string) [][]string {
+ res := make(map[string][]string)
+
+ for _, s := range strs {
+ sortedS := sortString(s)
+ res[sortedS] = append(res[sortedS], s)
+ }
+
+ var result [][]string
+ for _, group := range res {
+ result = append(result, group)
+ }
+ return result
+}
+
+func sortString(s string) string {
+ characters := []rune(s)
+ sort.Slice(characters, func(i, j int) bool {
+ return characters[i] < characters[j]
+ })
+ return string(characters)
+}
+```
+
+```kotlin
+class Solution {
+ fun groupAnagrams(strs: Array): List> {
+ val res = mutableMapOf>()
+
+ for (s in strs) {
+ val sortedS = s.toCharArray().sorted().joinToString("")
+ res.getOrPut(sortedS) { mutableListOf() }.add(s)
+ }
+
+ return res.values.toList()
+ }
+}
+```
+
+```swift
+class Solution {
+ func groupAnagrams(_ strs: [String]) -> [[String]] {
+ var res = [String: [String]]()
+
+ for s in strs {
+ let sortedS = String(s.sorted())
+ res[sortedS, default: []].append(s)
+ }
+
+ return Array(res.values)
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(m * n \log n)$
+* Space complexity: $O(m * n)$
+
+> Where $m$ is the number of strings and $n$ is the length of the longest string.
+
+---
+
+## 2. Hash Table
+
+::tabs-start
+
+```python
+class Solution:
+ def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
+ res = defaultdict(list)
+ for s in strs:
+ count = [0] * 26
+ for c in s:
+ count[ord(c) - ord('a')] += 1
+ res[tuple(count)].append(s)
+ return list(res.values())
+```
+
+```java
+public class Solution {
+ public List> groupAnagrams(String[] strs) {
+ Map> res = new HashMap<>();
+ for (String s : strs) {
+ int[] count = new int[26];
+ for (char c : s.toCharArray()) {
+ count[c - 'a']++;
+ }
+ String key = Arrays.toString(count);
+ res.putIfAbsent(key, new ArrayList<>());
+ res.get(key).add(s);
+ }
+ return new ArrayList<>(res.values());
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector> groupAnagrams(vector& strs) {
+ unordered_map> res;
+ for (const auto& s : strs) {
+ vector count(26, 0);
+ for (char c : s) {
+ count[c - 'a']++;
+ }
+ string key = to_string(count[0]);
+ for (int i = 1; i < 26; ++i) {
+ key += ',' + to_string(count[i]);
+ }
+ res[key].push_back(s);
+ }
+ vector> result;
+ for (const auto& pair : res) {
+ result.push_back(pair.second);
+ }
+ return result;
+ }
+};
+```
+
+```javascript
+class Solution {
+ /**
+ * @param {string[]} strs
+ * @return {string[][]}
+ */
+ groupAnagrams(strs) {
+ const res = {};
+ for (let s of strs) {
+ const count = new Array(26).fill(0);
+ for (let c of s) {
+ count[c.charCodeAt(0) - 'a'.charCodeAt(0)] += 1;
+ }
+ const key = count.join(',');
+ if (!res[key]) {
+ res[key] = [];
+ }
+ res[key].push(s);
+ }
+ return Object.values(res);
+ }
+}
+```
+
+```csharp
+public class Solution {
+ public List> GroupAnagrams(string[] strs) {
+ var res = new Dictionary>();
+ foreach (var s in strs) {
+ int[] count = new int[26];
+ foreach (char c in s) {
+ count[c - 'a']++;
+ }
+ string key = string.Join(",", count);
+ if (!res.ContainsKey(key)) {
+ res[key] = new List();
+ }
+ res[key].Add(s);
+ }
+ return res.Values.ToList>();
+ }
+}
+```
+
+```go
+func groupAnagrams(strs []string) [][]string {
+ res := make(map[[26]int][]string)
+
+ for _, s := range strs {
+ var count [26]int
+ for _, c := range s {
+ count[c-'a']++
+ }
+ res[count] = append(res[count], s)
+ }
+
+ var result [][]string
+ for _, group := range res {
+ result = append(result, group)
+ }
+ return result
+}
+```
+
+```kotlin
+class Solution {
+ fun groupAnagrams(strs: Array): List> {
+ val res = HashMap, MutableList>()
+
+ for (s in strs) {
+ val count = MutableList(26) { 0 }
+ for (c in s) {
+ count[c - 'a']++
+ }
+ res.getOrPut(count) { mutableListOf() }.add(s)
+ }
+
+ return res.values.toList()
+ }
+}
+```
+
+```swift
+class Solution {
+ func groupAnagrams(_ strs: [String]) -> [[String]] {
+ var res = [Array: [String]]()
+
+ for s in strs {
+ var count = [Int](repeating: 0, count: 26)
+ for c in s {
+ count[Int(c.asciiValue!) - 97] += 1
+ }
+ res[count, default: []].append(s)
+ }
+
+ return Array(res.values)
+ }
+}
+```
+
+::tabs-end
+
+### Time & Space Complexity
+
+* Time complexity: $O(m * n)$
+* Space complexity:
+ * $O(m)$ extra space.
+ * $O(m * n)$ space for the output list.
+
+> Where $m$ is the number of strings and $n$ is the length of the longest string.
\ No newline at end of file
diff --git a/articles/analyze-user-website-visit-pattern.md b/articles/analyze-user-website-visit-pattern.md
new file mode 100644
index 000000000..c43fce6ba
--- /dev/null
+++ b/articles/analyze-user-website-visit-pattern.md
@@ -0,0 +1,224 @@
+## 1. Hash Map
+
+::tabs-start
+
+```python
+class Solution:
+ def mostVisitedPattern(self, username: List[str], timestamp: List[int], website: List[str]) -> List[str]:
+ arr = list(zip(timestamp, username, website))
+ arr.sort()
+
+ mp = defaultdict(list)
+ for time, user, site in arr:
+ mp[user].append(site)
+
+ count = defaultdict(int)
+ for user in mp:
+ patterns = set()
+ cur = mp[user]
+ for i in range(len(cur)):
+ for j in range(i + 1, len(cur)):
+ for k in range(j + 1, len(cur)):
+ patterns.add((cur[i], cur[j], cur[k]))
+ for p in patterns:
+ count[p] += 1
+
+ max_count = 0
+ res = tuple()
+ for pattern in count:
+ if count[pattern] > max_count or (count[pattern] == max_count and pattern < res):
+ max_count = count[pattern]
+ res = pattern
+
+ return list(res)
+```
+
+```java
+public class Solution {
+ public List mostVisitedPattern(String[] username, int[] timestamp, String[] website) {
+ int n = timestamp.length;
+ List arr = new ArrayList<>();
+ for (int i = 0; i < n; i++) arr.add(new int[]{timestamp[i], i});
+ arr.sort((a, b) -> Integer.compare(a[0], b[0]));
+
+ Map> mp = new HashMap<>();
+ for (int[] p : arr) {
+ int idx = p[1];
+ mp.computeIfAbsent(username[idx], k -> new ArrayList<>()).add(website[idx]);
+ }
+
+ Map count = new HashMap<>();
+ for (String user : mp.keySet()) {
+ List cur = mp.get(user);
+ Set patterns = new HashSet<>();
+ for (int i = 0; i < cur.size(); i++)
+ for (int j = i + 1; j < cur.size(); j++)
+ for (int k = j + 1; k < cur.size(); k++)
+ patterns.add(cur.get(i) + "#" + cur.get(j) + "#" + cur.get(k));
+ for (String p : patterns)
+ count.put(p, count.getOrDefault(p, 0) + 1);
+ }
+
+ String res = "";
+ int max_count = 0;
+ for (String p : count.keySet()) {
+ int c = count.get(p);
+ if (c > max_count || (c == max_count && p.compareTo(res) < 0)) {
+ max_count = c;
+ res = p;
+ }
+ }
+ return Arrays.asList(res.split("#"));
+ }
+}
+```
+
+```cpp
+class Solution {
+public:
+ vector mostVisitedPattern(vector