[go: nahoru, domu]

Skip to content

Discover solutions to algoexpert problems in six programming languages: Python, Java, Go, C++, C#, and JavaScript/TypeScript

Notifications You must be signed in to change notification settings

drmacsika/algoexpert-solutions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Solutions to AlgoExpert Problems in Six Programming Languages: Python, Java, Go, C++, C#, JavaScript/TypeScript

Discover solutions to AlgoExpert problems in six programming languages: Python, Java, Go, C++, C#, and JavaScript/TypeScript.

⭐ Table of Contents:

List of Problems and Solutions

Difficulty Levels Guide

  • 🟒 : Easy
  • πŸ”΅ : Medium
  • πŸ”΄ : Hard
  • ⚫ : Very Hard

Problems and Solutions

Problem Statement Difficulty Level Category Solution Link Website Link
Two Number Sum 🟒 Arrays Program.java Link
Validate Subsequence 🟒 Arrays Program.java Link
Tournament Winner 🟒 Arrays Program.java
Non-Constructible Change 🟒 Arrays Program.java Link
Sorted Squared Array 🟒 Arrays Program.java Link
Three Number Sum πŸ”΅ Arrays Program.java Link
Smallest Difference πŸ”΅ Arrays Program.java Link
Move Element To End πŸ”΅ Arrays Program.java Link
Monotonic Array πŸ”΅ Arrays Program.java Link
Spiral Traverse πŸ”΅ Arrays Program.java Link
Longest Peak πŸ”΅ Arrays Program.java Link
Array Of Products πŸ”΅ Arrays Program.java Link
First Duplicate Value πŸ”΅ Arrays Program.java Link
Merge Overlapping Intervals πŸ”΅ Arrays Program.java Link
Four Number Sum πŸ”΄ Arrays Program.java Link
Subarray Sort πŸ”΄ Arrays Program.java Link
Largest Range πŸ”΄ Arrays Program.java Link
Min Rewards πŸ”΄ Arrays Program.java Link
Zigzag Traverse πŸ”΄ Arrays Program.java
Apartment Hunting ⚫ Arrays Program.java Link
Calendar Matching ⚫ Arrays Program.java Link
Waterfall Streams ⚫ Arrays Program.java Link
Minimum Area Rectangle ⚫ Arrays Program.java Link
Line Through Points ⚫ Arrays Program.java Link
Palindrome Check 🟒 Strings Program.java Link
Caesar Cypher Encryptor 🟒 Strings Program.java Link
Run-Length Encoding 🟒 Strings Program.java Link
Generate Document 🟒 Strings Program.java
First Non-Repeating Character 🟒 Strings Program.java
Longest Palindromic Substring πŸ”΅ Strings Program.java
Group Anagrams πŸ”΅ Strings Program.java
Valid IP Addresses πŸ”΅ Strings Program.java
Reverse Words In String πŸ”΅ Strings Program.java
Minimum Characters For Words πŸ”΅ Strings Program.java
Longest Substring Without Duplication πŸ”΄ Strings Program.java
Underscorify Substring πŸ”΄ Strings Program.java
Pattern Matcher πŸ”΄ Strings Program.java
Smallest Substring Containing ⚫ Strings Program.java
Longest Balanced Substring ⚫ Strings Program.java
Remove Duplicates From Linked List 🟒 Linked Lists Program.java
Linked List Construction πŸ”΅ Linked Lists Program.java
Remove Kth Node From End πŸ”΅ Linked Lists Program.java
Sum of Linked Lists πŸ”΅ Linked Lists Program.java
Find Loop πŸ”΄ Linked Lists Program.java
Reverse Linked List πŸ”΄ Linked Lists Program.java
Merge Linked Lists πŸ”΄ Linked Lists Program.java
Shift Linked List πŸ”΄ Linked Lists Program.java
LRU Cache ⚫ Linked Lists Program.java
Rearrange Linked List ⚫ Linked Lists Program.java
Linked List Palindrome ⚫ Linked Lists Program.java
Zip Linked List ⚫ Linked Lists Program.java
Node Swap ⚫ Linked Lists Program.java
Min Max Stack Construction πŸ”΅ Stacks Program.java
Balanced Brackets πŸ”΅ Stacks Program.java
Sunset Views πŸ”΅ Stacks Program.java
Sort Stack πŸ”΅ Stacks Program.java
Shorten Path πŸ”΄ Stacks Program.java
Largest Rectangle Under Skyline πŸ”΄ Stacks Program.java
Binary Search 🟒 Searching Program.java
Find Three Largest Numbers 🟒 Searching Program.java
Search In Sorted Matrix πŸ”΅ Searching Program.java
Shifted Binary Search πŸ”΄ Searching Program.java
Search For Range πŸ”΄ Searching Program.java
Quickselect πŸ”΄ Searching Program.java
Index Equals Value πŸ”΄ Searching Program.java
Bubble Sort 🟒 Sorting Program.java
Insertion Sort 🟒 Sorting Program.java
Selection Sort 🟒 Sorting Program.java
Three Number Sort πŸ”΅ Sorting Program.java
Quick Sort πŸ”΄ Sorting Program.java
Heap Sort πŸ”΄ Sorting Program.java
Radix Sort πŸ”΄ Sorting Program.java
Merge Sort ⚫ Sorting Program.java
Minimum Waiting Time 🟒 Greedy Algorithms Program.java
Class Photos 🟒 Greedy Algorithms Program.java
Tandem Bicycle 🟒 Greedy Algorithms Program.java
Task Assignment πŸ”΅ Greedy Algorithms Program.java
Valid Starting City πŸ”΅ Greedy Algorithms Program.java
Min Heap Construction πŸ”΅ Heaps Program.java
Continuous Median πŸ”΄ Heaps Program.java
Sort K-Sorted Array πŸ”΄ Heaps Program.java
Laptop Rentals πŸ”΄ Heaps Program.java
Merge Sorted Arrays ⚫ Heaps Program.java
Kadane's Algorithm πŸ”΅ Famous Algorithms Program.java
Dijkstra's Algorithm πŸ”΄ Famous Algorithms Program.java
Topological Sort πŸ”΄ Famous Algorithms Program.java
Knuth Morris Pratt Algorithm ⚫ Famous Algorithms Program.java
A* Algorithm ⚫ Famous Algorithms Program.java
Nth Fibonacci 🟒 Recursion Program.java
Product Sum 🟒 Recursion Program.java
Permutations πŸ”΅ Recursion Program.java
Powerset πŸ”΅ Recursion Program.java
Phone Number Mnemonics πŸ”΅ Recursion Program.java
Staircase Traversal πŸ”΅ Recursion Program.java
Lowest Common Manager πŸ”΄ Recursion Program.java
Interweaving Strings πŸ”΄ Recursion Program.java
Solve Sudoku πŸ”΄ Recursion Program.java
Ambiguous Measurements πŸ”΄ Recursion Program.java
Generate Div Tags πŸ”΄ Recursion Program.java
Number Of Binary Tree Topologies ⚫ Recursion Program.java
Non Attacking Queens ⚫ Recursion Program.java
Find Closest Value In BST 🟒 Binary Search Trees Program.java
BST Traversal πŸ”΅ Binary Search Trees Program.java
BST Construction πŸ”΅ Binary Search Trees Program.java
Validate BST πŸ”΅ Binary Search Trees Program.java
Min Height BST πŸ”΅ Binary Search Trees Program.java
Find Kth Largest Value In BST πŸ”΅ Binary Search Trees Program.java
Reconstruct BST πŸ”΅ Binary Search Trees Program.java
Validate Three Nodes πŸ”΄ Binary Search Trees Program.java
Same BSTs πŸ”΄ Binary Search Trees Program.java
Right Smaller Than ⚫ Binary Search Trees Program.java
Branch Sums 🟒 Binary Trees Program.java
Node Depths 🟒 Binary Trees Program.java
Invert Binary Tree πŸ”΅ Binary Trees Program.java
Binary Tree Diameter πŸ”΅ Binary Trees Program.java
Find Successor πŸ”΅ Binary Trees Program.java
Height Balanced Binary Tree πŸ”΅ Binary Trees Program.java
Max Path Sum In Binary Tree πŸ”΄ Binary Trees Program.java
Find Nodes Distance K πŸ”΄ Binary Trees Program.java
Iterative In-Order Traversal ⚫ Binary Trees Program.java
Flatten Binary Tree ⚫ Binary Trees Program.java
Right Sibling Tree ⚫ Binary Trees Program.java
All Kinds of Node Depths ⚫ Binary Trees Program.java
Compare Leaf Traversal ⚫ Binary Trees Program.java
Max Subset Sum No Adjacent πŸ”΅ Dynamic Programming Program.java
Number Of Ways To Make Change πŸ”΅ Dynamic Programming Program.java
Min Number Of Coins For Change πŸ”΅ Dynamic Programming Program.java
Levenshtein Distance πŸ”΅ Dynamic Programming Program.java
Number Of Ways To Traverse Graph πŸ”΅ Dynamic Programming Program.java
Max Sum Increasing Subsequence πŸ”΄ Dynamic Programming Program.java
Longest Common Subsequence πŸ”΄ Dynamic Programming Program.java
Min Number of Jumps πŸ”΄ Dynamic Programming Program.java
Water Area πŸ”΄ Dynamic Programming Program.java
Knapsack Problem πŸ”΄ Dynamic Programming Program.java
Disk Stacking πŸ”΄ Dynamic Programming Program.java
Numbers In Pi πŸ”΄ Dynamic Programming Program.java
Maximum Sum Submatrix πŸ”΄ Dynamic Programming Program.java
Maximize Expression πŸ”΄ Dynamic Programming Program.java
Max Profit With K Transactions ⚫ Dynamic Programming Program.java
Palindrome Partitioning Min Cuts ⚫ Dynamic Programming Program.java
Longest Increasing Subsequence ⚫ Dynamic Programming Program.java
Longest String Chain ⚫ Dynamic Programming Program.java
Square Of Zeroes ⚫ Dynamic Programming Program.java
Depth-First Search 🟒 Graphs Program.java
Single Cycle Check πŸ”΅ Graphs Program.java
Breadth-First Search πŸ”΅ Graphs Program.java
River Sizes πŸ”΅ Graphs Program.java
Youngest Common Ancestor πŸ”΅ Graphs Program.java
Remove Islands πŸ”΅ Graphs Program.java
Cycle In Graph πŸ”΅ Graphs Program.java
Minimum Passes Of Matrix πŸ”΅ Graphs Program.java
Boggle Board πŸ”΄ Graphs Program.java
Rectangle Mania ⚫ Graphs Program.java
Airport Connections ⚫ Graphs Program.java
Detect Arbitrage ⚫ Graphs Program.java
Two-Edge Connected Graph ⚫ Graphs Program.java
Suffix Trie Construction πŸ”΅ Tries Program.java
Multi String Search πŸ”΄ Tries Program.java

Contributing

Pull requests and contributions are welcome. For major changes, please open an issue first to discuss what you would like to change.

Ensure to follow the guidelines and update tests as appropriate.

Screenshots

Arrays, Binary Search Trees, Binary Trees, and Dynamic Programming

Famous Algorithms, Graphs, Greedy Algorithms, and Heaps

LinkedList, Recursion, Searching, and Sorting

Stacks, Strings and Tries