Skip to content

ignacio-chiazzo/Algorithms-Leetcode-Javascript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Algorithms-Javascript

Solutions of algorithm problems using Javascript. https://ignacio-chiazzo.github.io/Algorithms-Leetcode-Javascript/

Structure

The solutions are located under /LeetcodeProblems. Each problem has a test file located under /LeetcodeProblemsTest.

Run Tests

Unit tests: To run all the test run node Test.js in the console. To run a specific problem in your console run node Test.js <problem_file_path> (e.g. node Test.js ./LeetcodeProblemsTests/Algorithms/easy/2Sum_Test.js).

Linter: This repository uses es-lint. To run all the tests you would need to install the packages by running npm install followed by npx eslint LeetcodeProblems LeetcodeProblemsTests which will run the eslint in all problems and tests. You can also use the flag --fix which will automatically fix some of the errors.

Leetcode Problems

Name Level Link
Edit Distance Hard https://leetcode.com/problems/edit-distance/
First Missing Positive Hard https://leetcode.com/problems/first-missing-positive/
Remove Invalid Parentheses Hard https://leetcode.com/problems/remove-invalid-parentheses/
Longest Consecutive Sequence Hard https://leetcode.com/problems/longest-consecutive-sequence/
Minimum Window Substring Hard https://leetcode.com/problems/minimum-window-substring/
Regular Expression Matching Hard https://leetcode.com/problems/regular-expression-matching/
NQueens Hard https://leetcode.com/problems/n-queens/
merge k sorted lists Hard https://leetcode.com/problems/merge-k-sorted-lists/
Set Matrix Zeroes Hard https://leetcode.com/problems/set-matrix-zeroes/
Subarray Sum Equals K Medium https://leetcode.com/problems/subarray-sum-equals-k/
3Sum Closest Medium https://leetcode.com/problems/3sum-closest/
3Sum Medium https://leetcode.com/problems/3sum/
NumberOfIslands Medium https://leetcode.com/problems/number-of-islands/
Swap Nodes in Pairs Medium https://leetcode.com/problems/swap-nodes-in-pairs/
Add Two Numbers Medium https://leetcode.com/problems/add-two-numbers/
Clone Graph Medium https://leetcode.com/problems/clone-graph/
Coin Change Medium https://leetcode.com/problems/coin-change/
Container With Most Water Medium https://leetcode.com/problems/container-with-most-water/
Design Circular Deque Medium https://leetcode.com/problems/design-circular-deque/
Escape The Ghosts Medium https://leetcode.com/problems/escape-the-ghosts/
Find All Anagrams in a String Medium https://leetcode.com/problems/find-all-anagrams-in-a-string/
Generate Parenthesis Medium https://leetcode.com/problems/generate-parentheses
Group Anagrams Medium https://leetcode.com/problems/group-anagrams/
Kth Largest Element in an Array Medium https://leetcode.com/problems/kth-largest-element-in-an-array/
Linked List Cycle II Medium https://leetcode.com/problems/linked-list-cycle-ii/
Longest Palindromic Substring Medium https://leetcode.com/problems/longest-palindromic-substring/
Longest Substring Without Reapeating Characters Medium https://leetcode.com/problems/longest-substring-without-repeating-characters
Max Area Of Island Medium https://leetcode.com/problems/max-area-of-island/
Max Consecutive Ones III Medium https://leetcode.com/problems/max-consecutive-ones-iii
Maximal Square Medium https://leetcode.com/problems/maximal-square/
Minimum Add to Make Parentheses Valid Medium https://leetcode.com/problems/minimum-add-to-make-parentheses-valid/
Minimum Size Subarray Medium https://leetcode.com/problems/minimum-size-subarray-sum
Permutations Medium https://leetcode.com/problems/permutations/
Permutations II Medium https://leetcode.com/problems/permutations-ii/
Permutation in String Medium https://leetcode.com/problems/permutation-in-string/
Permutations Without Duplicates Medium https://leetcode.com/problems/permutations/
Restore IP Addresses Medium https://leetcode.com/problems/restore-ip-addresses/
SearchIng Rotated Sorted Array Medium https://leetcode.com/problems/search-in-rotated-sorted-array/
Search a 2D Matrix Medium https://leetcode.com/problems/search-a-2d-matrix/
Search a 2D Matrix II Medium https://leetcode.com/problems/search-a-2d-matrix/
Simplify Path Medium https://leetcode.com/problems/simplify-path/
Spiral Matrix Medium https://leetcode.com/problems/spiral-matrix/
Subsets Medium https://leetcode.com/problems/subsets/
Unique Binary Search Trees Medium https://leetcode.com/problems/unique-binary-search-trees/
Unique Paths Medium https://leetcode.com/problems/unique-paths/
Verify Preorder Serialization of a Binary Tree Medium https://leetcode.com/problems/verify-preorder-serialization-of-a-binary-tree/
Construct Binary Tree from Preorder and Inorder Traversal Medium https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/
Lowest Common Ancestor of a Binary Tree Medium https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/
Maximum Sum of an Hourglass Medium https://leetcode.com/problems/maximum-sum-of-an-hourglass/
Next Permutation Medium https://leetcode.com/problems/next-permutation/
Time Needed to Rearrange a Binary String Medium https://leetcode.com/problems/time-needed-to-rearrange-a-binary-string/
Find Subarrays With Equal Sum Medium https://leetcode.com/problems/find-subarrays-with-equal-sum/
Reverse Integer Medium https://leetcode.com/problems/reverse-integer/
Minimize Maximum Pair Sum in Array Medium https://leetcode.com/problems/minimize-maximum-pair-sum-in-array/
Top K Frequent Elements Medium https://leetcode.com/problems/top-k-frequent-elements/
Gas Station Medium https://leetcode.com/problems/gas-station/description/
K Closest Points to Origin Medium https://leetcode.com/problems/k-closest-points-to-origin/
BestTimeToBuy Medium https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii
Best Time to Buy and Sell Stock Easy https://leetcode.com/problems/best-time-to-buy-and-sell-stock/
Flood Fill Easy https://leetcode.com/problems/flood-fill/
Implement stack using queues Easy https://leetcode.com/problems/implement-stack-using-queues/
Number of Segments in a String Easy https://leetcode.com/problems/number-of-segments-in-a-string/
Maximun Subarray Easy https://leetcode.com/problems/maximum-subarray
Min Stack Easy https://leetcode.com/problems/min-stack/
Reverse String II Easy https://leetcode.com/problems/reverse-string-ii/
Same Tree Easy https://leetcode.com/problems/same-tree/
Sum Of Square Numbers Easy https://leetcode.com/problems/sum-of-square-numbers/
Symmetric Tree Easy https://leetcode.com/problems/symmetric-tree/
Valid Parentheses Easy https://leetcode.com/problems/valid-parentheses/
Backspace String Compare Easy https://leetcode.com/problems/backspace-string-compare/
Binary Gap Easy https://leetcode.com/problems/binary-gap/
Majority Element Easy https://leetcode.com/problems/majority-element/
Lexographically Smallest String After A Swap Easy https://leetcode.com/problems/lexicographically-smallest-string-after-a-swap/
Longest Common Prefix Easy https://leetcode.com/problems/longest-common-prefix/
Two Sum Easy https://leetcode.com/problems/two-sum/
Tic Tac Toe Easy
Permutations With Duplicates Easy
Deletion Distance Easy
Award Budget Cuts Easy
Happy Number Easy https://leetcode.com/problems/happy-number/
Shuffle String Easy https://leetcode.com/problems/shuffle-string/
Reverse bit to make number equal Easy https://leetcode.com/problems/number-of-bit-changes-to-make-two-integers-equal/

Sorting Algorithms

Algoritmhs
Heap Sort
Quick Sort

Databases

Problems Level Link
Trips and Users Hard https://leetcode.com/problems/trips-and-users/
Human Traffic of Stadium Hard https://leetcode.com/problems/human-traffic-of-stadium
Rank Scores Medium https://leetcode.com/problems/rank-scores
Consecutive Numbers Medium https://leetcode.com/problems/consecutive-numbers
Department Highest Salary Medium https://leetcode.com/problems/department-highest-salary
Exchange Seats Medium https://leetcode.com/problems/exchange-seats
Nth Highest Salary Medium https://leetcode.com/problems/nth-highest-salary
Combine Two Tables Easy https://leetcode.com/problems/combine-two-tables
Second Highest Salary Easy https://leetcode.com/problems/second-highest-salary
Customers Who Never Order Easy https://leetcode.com/problems/customers-who-never-order
Reformat Department Table Easy https://leetcode.com/problems/reformat-department-table
Employees Earning More Than Their Managers Easy https://leetcode.com/problems/employees-earning-more-than-their-managers/
Delete Duplicate Emails Easy https://leetcode.com/problems/delete-duplicate-emails
Rising Temperature Easy https://leetcode.com/problems/rising-temperature

UtilsClasses

Other languages provides built-in classes (e.g Linked List, Tree, etc). This module contains util classes to use in your problems.

Contributions

I'd be pleased to accept contributions. I'd be happy to discuss problems and solutions over a Pull Request or an Issue.

Each problem should have:

  1. A description of the problem at the top of the file.
  2. A test file with some test cases. The test file must export a test() function which should run all the tests of the file.
  3. An entry of the problem in the list of solutions within the README file.

PR Example: #39