Skip to content

Lucasbritx/leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

140 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Algorithm Problems Solutions

A collection of solved algorithm problems from LeetCode, NeetCode, FreeCodeCamp, and HackerRank.

Languages Problems


πŸ“Š Summary

Platform Problems Solved
LeetCode 71
NeetCode 6
FreeCodeCamp 13
HackerRank 4

πŸ”Ά LeetCode Problems

# Problem Solution Difficulty
1 Two Sum TypeScript, Scala 🟒 Easy
5 Longest Palindromic Substring TypeScript 🟑 Medium
7 Reverse Integer Scala 🟑 Medium
9 Palindrome Number Scala 🟒 Easy
11 Container With Most Water TypeScript 🟑 Medium
13 Roman to Integer JavaScript 🟒 Easy
19 Remove Nth Node From End of List JavaScript 🟑 Medium
20 Valid Parentheses Python 🟒 Easy
21 Merge Two Sorted Lists Python, TypeScript 🟒 Easy
23 Merge k Sorted Lists Python πŸ”΄ Hard
26 Remove Duplicates from Sorted Array TypeScript 🟒 Easy
27 Remove Element Scala, TypeScript 🟒 Easy
56 Merge Intervals TypeScript 🟑 Medium
66 Plus One JavaScript 🟒 Easy
67 Add Binary JavaScript 🟒 Easy
70 Climbing Stairs Python 🟒 Easy
79 Word Search JavaScript 🟑 Medium
91 Decode Ways Python 🟑 Medium
92 Reverse Linked List II JavaScript 🟑 Medium
94 Binary Tree Inorder Traversal Python 🟒 Easy
98 Validate Binary Search Tree TypeScript 🟑 Medium
102 Binary Tree Level Order Traversal Python 🟑 Medium
106 Construct Binary Tree from Inorder and Postorder Traversal Python 🟑 Medium
112 Path Sum Python 🟒 Easy
125 Valid Palindrome TypeScript 🟒 Easy
133 Clone Graph Python 🟑 Medium
141 Linked List Cycle Python, TypeScript 🟒 Easy
146 LRU Cache Python 🟑 Medium
155 Min Stack Python 🟑 Medium
167 Two Sum II - Input Array Is Sorted TypeScript 🟑 Medium
174 Dungeon Game Scala πŸ”΄ Hard
206 Reverse Linked List TypeScript 🟒 Easy
207 Course Schedule Python 🟑 Medium
208 Implement Trie (Prefix Tree) Python 🟑 Medium
210 Course Schedule II TypeScript 🟑 Medium
217 Contains Duplicate Scala, TypeScript 🟒 Easy
219 Contains Duplicate II TypeScript 🟒 Easy
268 Missing Number Python 🟒 Easy
292 Nim Game TypeScript 🟒 Easy
322 Coin Change Python 🟑 Medium
347 Top K Frequent Elements TypeScript 🟑 Medium
387 First Unique Character in a String JavaScript 🟒 Easy
392 Is Subsequence TypeScript 🟒 Easy
412 Fizz Buzz TypeScript 🟒 Easy
496 Next Greater Element I Python 🟒 Easy
500 Keyboard Row JavaScript 🟒 Easy
557 Reverse Words in a String III TypeScript 🟒 Easy
622 Design Circular Queue Python 🟑 Medium
703 Kth Largest Element in a Stream Python 🟒 Easy
704 Binary Search TypeScript 🟒 Easy
739 Daily Temperatures Python 🟑 Medium
743 Network Delay Time Python 🟑 Medium
744 Find Smallest Letter Greater Than Target TypeScript 🟒 Easy
792 Number of Matching Subsequences TypeScript 🟑 Medium
796 Rotate String JavaScript 🟒 Easy
876 Middle of the Linked List Python, TypeScript 🟒 Easy
981 Time Based Key-Value Store TypeScript 🟑 Medium
994 Rotting Oranges TypeScript 🟑 Medium
1018 Binary Prefix Divisible By 5 JavaScript 🟒 Easy
1200 Minimum Absolute Difference TypeScript 🟒 Easy
1342 Number of Steps to Reduce a Number to Zero Python 🟒 Easy
1436 Destination City Python, TypeScript 🟒 Easy
1437 Check If All 1's Are at Least Length K Places Away TypeScript 🟒 Easy
1695 Maximum Erasure Value JavaScript 🟑 Medium
1752 Check if Array Is Sorted and Rotated TypeScript 🟒 Easy
1957 Delete Characters to Make Fancy String JavaScript 🟒 Easy
1984 Minimum Difference Between Highest and Lowest of K Scores TypeScript 🟒 Easy
2154 Keep Multiplying Found Values by Two Java 🟒 Easy
2553 Separate the Digits in an Array JavaScript 🟒 Easy
2798 Number of Employees Who Met the Target TypeScript 🟒 Easy
2942 Find Words Containing Character Scala 🟒 Easy
3090 Maximum Length Substring With Two Occurrences TypeScript 🟒 Easy
3136 Valid Word JavaScript 🟒 Easy
3190 Find Minimum Operations to Make All Elements Divisible by Three JavaScript 🟒 Easy
3304 Find the K-th Character in String Game I JavaScript 🟒 Easy
3423 Maximum Difference Between Adjacent Elements in a Circular Array Scala 🟒 Easy
3478 Choose K Elements With Maximum Sum JavaScript 🟑 Medium
3783 Mirror Distance of an Integer JavaScript 🟒 Easy

🟦 NeetCode Problems

| Problem | Solution | Category | |---------|----------|----------|| Binary Search | JavaScript | Binary Search || Contains Duplicate | JavaScript | Arrays & Hashing | | Is Palindrome | JavaScript | Two Pointers | | Reverse Linked List | JavaScript | Linked Lists | | Top K Frequent Elements | JavaScript | Arrays & Hashing | | Valid Anagram | JavaScript | Arrays & Hashing |


πŸ”₯ FreeCodeCamp Problems

Problem Solution Description
Array Swap JavaScript Reverse an array
FizzBuzz Mini JavaScript Return Fizz, Buzz, FizzBuzz, or the number
Flatten the Array JavaScript Flatten a nested array
Good day JavaScript Return greeting based on time of day
Is Flat JavaScript Check if an array has no nested arrays
Is Odd or Even JavaScript Check if a number is odd or even
Is Valid Hex JavaScript Validate hex color codes
Letter and Number Count JavaScript Count letters and numbers in a string
Odd or Even Day JavaScript Check if a day of month is odd or even
Parsec Converter JavaScript Convert parsec values based on odd/even
Rock Paper Scissors JavaScript Classic RPS game implementation
Sorted Array JavaScript Array sorting algorithm
Truncate Text JavaScript Truncate text to 20 chars with ellipsis

οΏ½ HackerRank Problems

Problem Solution Description
Check Palindrome by Filtering Non Letters TypeScript Check if string is palindrome ignoring non-letters
Count Number Pairs TypeScript Count pairs with sum within budget
Merge and Sort Intervals TypeScript Merge overlapping intervals and sort
Response Time Regressions TypeScript Count elements greater than running average

πŸ”„ Sorting Algorithms

Algorithm Solution Time Complexity Space Complexity
Bubble Sort Python O(nΒ²) O(1)
Merge Sort Python O(n log n) O(n)
Quick Sort Python O(n log n) O(log n)

πŸ•ΈοΈ Graph Algorithms

Algorithm Solution Time Complexity Space Complexity
Dijkstra Python O((V + E) log V) O(V)

🌳 Data Structures

Structure Solution Description
Binary Tree Python Basic binary tree implementation
Hashmap Python Hash map implementation with put, get, and remove operations
Min Heap Python Min heap implementation
Stack Python Linked-list stack with push, pop, peek, and size operations
Trie Python, Nim Prefix tree with insert, search, and starts_with operations

πŸ› οΈ Languages Used

  • JavaScript - Primary language for most solutions
  • TypeScript - Type-safe JavaScript solutions
  • Python - Clean and readable solutions
  • Scala - Functional programming approach
  • Java - Object-oriented solutions
  • Nim - Fast and expressive systems programming language

πŸ“ File Naming Convention

  • LeetCode: {problem-number}-{problem-name}.{extension}
  • NeetCode: neetcode-{problem-name}.{extension}
  • FreeCodeCamp: freecodecamp-{problem-name}.{extension}
  • HackerRank: hackerhank-{problem-name}.{extension}

πŸš€ How to Run

JavaScript/TypeScript

node filename.js
# or with ts-node for TypeScript
npx ts-node filename.ts

Python

python3 filename.py

Scala

scala filename.scala

Java

javac filename.java && java ClassName

πŸ“ License

This repository is for educational purposes. Feel free to use the solutions as reference for learning.


⭐ Happy Coding!