An open API service indexing awesome lists of open source software.

https://github.com/codesandtags/algorithms-documentation

This is a compilation about all topics related with the Algorithms that I'm learning everyday
https://github.com/codesandtags/algorithms-documentation

Last synced: about 1 year ago
JSON representation

This is a compilation about all topics related with the Algorithms that I'm learning everyday

Awesome Lists containing this project

README

          

# Algorithms Documentation 2023

[![Run on Repl.it](https://repl.it/badge/github/codesandtags/algorithms-documentation)](https://repl.it/github/codesandtags/algorithms-documentation)

> This is a compilation about all topics related with the Algorithms that I'm learning everyday

## Live Code

| Description | URL |
| -------------- | ---------------------------------------------- |
| JS Bin | http://jsbin.com/tutacox/edit?js,console |
| JS Play Ground | https://stephengrider.github.io/JSPlaygrounds/ |
| Stack Blitz | https://stackblitz.com/ |
| Code Pen | https://codepen.io/ |
| GreatFrontend | https://www.greatfrontend.com/ |

## Challenges online for Algorithms and coding

| Description | URL |
| ------------------------------------------------------------ | :-------------------------------------------------------------------: |
| Code fast and code well with JavaScript | http://www.codewars.com/ |
| Try to solve many problems using JavaScript | https://coderbyte.com/ |
| Solve challenges online using JavaScript | https://www.codingame.com/start |
| CodeFights with JavaScript become in a Hero | https://codefights.com/ |
| Formulas for combinatory | http://www.vitutor.com/pro/1/a_f.html |
| HackerRank one of the best pages for challenges | https://www.hackerrank.com |
| Exercism | http://exercism.io/ |
| Code Chef | https://www.codechef.com/wiki/tutorials |
| LeetCode is the best platform to help you enhance your skill | https://leetcode.com/ |
| LeetCode solutions explained | https://jeantimex.gitbooks.io/solve-leetcode-problems/content/ |
| LeetCode solutions in Java | https://legacy.gitbook.com/book/tenderleo/leetcode-solutions-/details |
| Platform to take coding test for companies | https://app.codility.com/programmers/ |
| Freecode Camp | https://www.freecodecamp.org/learn |

## Fundamentals

| Description | URL |
| ------------------------- | :----------------------------------------------------------------------------------------------------- |
| Data Structures explained | https://medium.freecodecamp.org/10-common-data-structures-explained-with-videos-exercises-aaff6c06fb2b |
| Big O Cheat Sheet | https://www.bigocheatsheet.com/ |
| Algorithms Visualization | https://www.cs.usfca.edu/~galles/visualization/Algorithms.html |
| Big O Array JavaScript | https://dev.to/lukocastillo/time-complexity-big-0-for-javascript-array-methods-and-examples-mlg |

## Complexity Algorithms

| Complexity | Notation | Description |
| ---------------- | :---------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| Constant Time | 1 | No matter how many elements we're working with, the algorithm/operation/whatever will always take the same amount of time |
| Logarithmic Time | log(n) | You have this if doubling the number of elements you are iterating over doesn't double the amount of work. Always assume that searching operations are log(n) |
| Linear Time | n | Iterating through all elements in a collecion of data. If you see a foor loop spanning from 0 to array.length, you probably have 'n' or linear runtime |
| Quasilinear Time | n \* log(n) | You have this if doubling the number of elements you are iterating over doesnt's the amount of work. Always assume that any sorting operation is n \* log(n) |
| Quadratic Time | 2 ^ n | Every element in a collection has to be compared to every other element. The 'handshake problem' |
| Exponential Time | n ^ 2 | If you add a 'single' element to a collection, the processing power requires doubles |

![Complexity Algorithms](https://images.squarespace-cdn.com/content/v1/5acbdd3a25bf024c12f4c8b4/1599000012698-NJEGM0BCGG5ZKGIWC1GU/Big%2BO%2BNotation%2BSummary%2B%281%29.jpg)

![Data structures](https://miro.medium.com/max/1017/1*cQ78W0R0qxaSgYLosfYMxg.png)

![Complexity Algorithms](https://he-s3.s3.amazonaws.com/media/uploads/c950295.png)

## Useful things

- Because I love the time and time is gold, that's why I've decided to use Intellij as my favorite IDE. Here I will put some useful links in order to optimize the time coding.

| Description | URL |
| -------------------- | :-------------------------------------------------------------: |
| Basics in Intellij | https://www.jetbrains.com/help/idea/discover-intellij-idea.html |
| Pro Tips in Intellij | https://www.jetbrains.com/help/idea/intellij-idea-pro-tips.html |
| IntelliJ Course | https://javaspecialists.teachable.com/p/intellij-wizardry |

## References

I have studied these contents from the next resources:

- [Master the Coding Interview: Big Tech (FAANG) Interviews - Zero To Mastery](https://zerotomastery.io/courses/faang-interview-prep/)