Updating conversion, creating readmes

This commit is contained in:
Jonas Zeunert
2024-04-19 23:37:46 +02:00
parent 3619ac710a
commit 08e75b0f0a
635 changed files with 30878 additions and 37344 deletions

View File

@@ -1,4 +1,4 @@
 Awesome Algorithms
 Awesome Algorithms
A curated list of awesome places to learn and/or practice algorithms.
Inspired by awesome-awesomeness (https://github.com/bayandin/awesome-awesomeness) and all the other awesome Awesome libraries.
@@ -29,8 +29,7 @@
⟡ CP-Algorithms (https://cp-algorithms.com/) - Algorithms and data structures are especially popular in the field of competitive programming.
⟡ Data Structure Visualizations (http://www.cs.usfca.edu/~galles/visualization/Algorithms.html) - Visualize the behavior of Data Structures and play with its operations.
⟡ Geeks for Geeks (http://www.geeksforgeeks.org/fundamentals-of-algorithms/) - Lots and lots of well-explained and implemented algorithms.
⟡ Path Finding (https://qiao.github.io/PathFinding.js/visual/) - A visual representation of how algorithms such as A*, IDA*, Breadth-First-Search, Best-First-Search, and others describe a path between two points
A and B.
⟡ Path Finding (https://qiao.github.io/PathFinding.js/visual/) - A visual representation of how algorithms such as A*, IDA*, Breadth-First-Search, Best-First-Search, and others describe a path between two points A and B.
⟡ Programiz (https://www.programiz.com/dsa) - Easy to follow tutorials on data structures and algorithms along with suitable examples.
⟡ Rosetta Code (http://rosettacode.org/wiki/Rosetta_Code) - A programming chrestomathy site that aims to present implementations of many algorithms and data structures in different programming languages.
⟡ Sorting Algorithms (http://www.sorting-algorithms.com/) - Nice and simple animations of sorting algorithms. With short codes and discussions.
@@ -46,14 +45,12 @@
High Quality Courses and tutorials on youtube
⟡ FreeCodeCamp - Algorithms and Data Structures Tutorial - Full Course for Beginners
 (https://www.youtube.com/watch?v=8hly31xKli0) - Complete beginner friendly Algorithms and Data Structures Tutorial with mindblowing animation.
⟡ FreeCodeCamp - Algorithms and Data Structures Tutorial - Full Course for Beginners (https://www.youtube.com/watch?v=8hly31xKli0) - Complete beginner friendly Algorithms and Data Structures Tutorial with mindblowing animation.
⟡ Abdul Bari - Introduction to Algorithm
 (https://www.youtube.com/watch?v=0IAPZzGSbME&list=PLDN4rrl48XKpZkf03iYFl-O29szjTrs_O) - This playlist is so much informative and provide simulation with code example. As like as you are in a class.
⟡ Jenny's Lectures- Algorithm
 (https://www.youtube.com/watch?v=AT14lCXuMKI&list=PLdo5W4Nhv31bbKJzrsKfMpo_grxuLl8LU) - Another complete alogrithm playlist from basic level to intermediate. Easy explanation and simulation.
⟡ Jenny's Lectures- Algorithm (https://www.youtube.com/watch?v=AT14lCXuMKI&list=PLdo5W4Nhv31bbKJzrsKfMpo_grxuLl8LU) - Another complete alogrithm playlist from basic level to intermediate. Easy explanation and simulation.
Online Courses
@@ -61,26 +58,22 @@
⟡ Algorithms: Divide and Conquer, Sorting and Searching, and Randomized Algorithms
 (https://www.coursera.org/learn/algorithms-divide-conquer) - The primary topics are: asymptotic ("Big-oh") notation, sorting and searching, divide and conquer, and randomized algorithms.
⟡ Algorithms: Graph Search, Shortest Paths, and Data Structures
 (https://www.coursera.org/learn/algorithms-graphs-data-structures) - The primary topics are: data structures, graph primitives, and their applications.
⟡ Algorithms: Graph Search, Shortest Paths, and Data Structures (https://www.coursera.org/learn/algorithms-graphs-data-structures) - The primary topics are: data structures, graph primitives, and their applications.
⟡ Algorithms: Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming (https://www.coursera.org/learn/algorithms-greedy) - The primary topics are: greedy algorithms and dynamic programming.
⟡ Algorithms: Shortest Paths Revisited, NP-Complete Problems and What To Do About Them (https://www.coursera.org/learn/algorithms-npcomplete) - The primary topics are: shortest paths, NP-completeness and what it
means for the algorithm designer, and strategies for coping with computationally intractable problems.
⟡ Algorithms, Part I (https://www.coursera.org/learn/algorithms-part1/home/welcome) - This course covers the essential information that every serious programmer needs to know about algorithms and data 
structures. Part I covers elementary data structures, sorting, and searching algorithms. 
⟡ Algorithms: Shortest Paths Revisited, NP-Complete Problems and What To Do About Them
 (https://www.coursera.org/learn/algorithms-npcomplete) - The primary topics are: shortest paths, NP-completeness and what it means for the algorithm designer, and strategies for coping with computationally intractable problems.
⟡ Algorithms, Part I (https://www.coursera.org/learn/algorithms-part1/home/welcome) - This course covers the essential information that every serious programmer needs to know about algorithms and data structures. Part I covers 
elementary data structures, sorting, and searching algorithms. 
⟡ Algorithms, Part II (https://www.coursera.org/learn/algorithms-part2) - Part II focuses on graph- and string-processing algorithms.
⟡ Khan Academy Algorithms (https://www.khanacademy.org/computing/computer-science/algorithms) - Algorithm course ministered by Tomas Cormen and Devin Balkcom.
⟡ MIT - 6-006 (https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/video_galleries/lecture-videos/) - Well explained algorithms.
⟡ MIT - 6-046j
 (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/video-lectures/) - Similar to the previous one, but with different algorithms.
⟡ MIT - 6-00sc
 (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/index.htm) - An easy and well-explained introduction to algorithms.
⟡ MIT - 6-046j (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/video-lectures/) - Similar to the previous one, but with different algorithms.
⟡ MIT - 6-00sc (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/index.htm) - An easy and well-explained introduction to algorithms.
⟡ MIT 18-409 - Topics in Theoretical Computer Science: An Algorithmist's Toolkit
 (https://ocw.mit.edu/courses/18-409-topics-in-theoretical-computer-science-an-algorithmists-toolkit-fall-2009/) - It covers a collection of geometric techniques that apply broadly in modern algorithm design.
⟡ Udacity Intro to Algorithms (https://www.udacity.com/course/intro-to-algorithms--cs215) - Python-based Algorithms course.
⟡ Algorithms in Motion (https://www.manning.com/livevideo/algorithms-in-motion) - Beginner's algorithms course with fun illustrations, based on the book Grokking Algorithms
⟡ YogiBearian YouTube Channel (https://www.youtube.com/channel/UCv3Kd0guxD5KWQtP---9D6g) - Lots of well-explained videos on various computer science subjects. _Account terminated due to violations of Youtube 
Policies._
⟡ YogiBearian YouTube Channel (https://www.youtube.com/channel/UCv3Kd0guxD5KWQtP---9D6g) - Lots of well-explained videos on various computer science subjects. _Account terminated due to violations of Youtube Policies._
Books
@@ -91,8 +84,7 @@
⟡ Algorithms (http://algs4.cs.princeton.edu/home/) - Problems explained with Java, OO good practices, visualizations, and free online resources.
⟡ Algorithms and Data Structures in JavaScript (https://gum.co/dsajs) - Classical algorithms and data structures implemented and explained using JavaScript.
⟡ Algorithms in a Nutshell (https://www.amazon.com/Algorithms-Nutshell-In-OReilly/dp/059651624X) - by George T. Heineman.
⟡ Classic Computer Science Problems in Python
 (https://www.manning.com/books/classic-computer-science-problems-in-python) -This great book presents dozens of coding challenges, ranging from simple tasks to clustering data using k-means.
⟡ Classic Computer Science Problems in Python (https://www.manning.com/books/classic-computer-science-problems-in-python) -This great book presents dozens of coding challenges, ranging from simple tasks to clustering data using k-means.
⟡ Data Structures and Algorithms Made Easy (https://www.amazon.in/Data-Structures-Algorithms-Made-Easy/dp/819324527X) - A great way to implement algorithms with their specific programmable tasks.
⟡ Data Structures Using C (http://www.amazon.com/Data-Structures-Using-Aaron-Tenenbaum/dp/0131997467) - The basic concepts and usages of data structures.
⟡ Elementary Algorithms (https://github.com/liuxinyu95/AlgoXY) - An awesome book about algorithms and data structures.
@@ -103,22 +95,21 @@
⟡ The Algorithm Design Manual (http://www.algorist.com/) - Easy to read and full of real-world examples.
⟡ The Art of Computer Programming (http://www-cs-faculty.stanford.edu/~uno/taocp.html) - The Book.
⟡ Structure and Interpretation of Computer Programs (https://mitpress.mit.edu/books/structure-and-interpretation-computer-programs-second-edition)
⟡ Algorithms and Data Structures in Action
 (https://www.manning.com/books/algorithms-and-data-structures-in-action) - A different and a great way to introduce algorithms and data structures that can be used at work.
⟡ Algorithms and Data Structures in Action (https://www.manning.com/books/algorithms-and-data-structures-in-action) - A different and a great way to introduce algorithms and data structures that can be used at work.
⟡ Algorithmic Puzzles (https://www.amazon.com/Algorithmic-Puzzles-Anany-Levitin/dp/0199740445) - A very accessible illustration of algorithms in the forms of puzzles. No programming experience is required!
⟡ Standford CS166 (https://web.stanford.edu/class/cs166/) - Standford CS166, a course in the design, analysis, and implementation of data structures.
Algorithm Analysis
- Sedgewick & Flajolet. An Introduction to the Analysis of Algorithm (https://www.amazon.com/Introduction-Analysis-Algorithms-Introdu-Algori_p2-ebook/dp/B00B3TB7IQ) - Am advanced complete survey, intended only 
for the mathematically matured reader.
- Sedgewick & Flajolet. An Introduction to the Analysis of Algorithm (https://www.amazon.com/Introduction-Analysis-Algorithms-Introdu-Algori_p2-ebook/dp/B00B3TB7IQ) - Am advanced complete survey, intended only for the mathematically 
matured reader.
- McConnell. Analysis of Algorithms (https://www.amazon.com/Analysis-Algorithms-Jeffrey-McConnell/dp/0763707821) - A very accessible and brief book on algorithms analysis, with implemented code included.
- Vrajitoru & Knight. Practical Analysis of Algorithms (https://www.amazon.com/Practical-Analysis-Algorithms-Undergraduate-Computer/dp/331909887X) - A very accessible and brief book on algorithms analysis, with 
implemented code included.
- Vrajitoru & Knight. Practical Analysis of Algorithms (https://www.amazon.com/Practical-Analysis-Algorithms-Undergraduate-Computer/dp/331909887X) - A very accessible and brief book on algorithms analysis, with implemented code 
included.
Randomized Algorithms
- Motwani & Raghavan. Randomized Algorithms (https://www.amazon.com/Randomized-Algorithms-Rajeev-Motwani/dp/0521474655) - A standard classic book.
- Mitzenmacher & Upfal. Probability and Computing: Randomization and Probabilistic Techniques in Algorithms and Data Analysis 
(https://www.amazon.com/Probability-Computing-Randomization-Probabilistic-Techniques-ebook/dp/B06X9YBMFK) - Standard text for probability methods and their applications on randomized algorithms.
- Mitzenmacher & Upfal. Probability and Computing: Randomization and Probabilistic Techniques in Algorithms and Data Analysis (https://www.amazon.com/Probability-Computing-Randomization-Probabilistic-Techniques-ebook/dp/B06X9YBMFK) - 
Standard text for probability methods and their applications on randomized algorithms.
Cheat Sheets
⟡ Tech Interview Cheat Sheet (https://github.com/TSiege/Tech-Interview-Cheat-Sheet)
@@ -216,8 +207,7 @@
⟡ CodeMarshal (https://algo.codemarshal.org/) - Real-world contests online!
⟡ CodeWars (http://www.codewars.com/) - A website that houses support to solve algorithms in many languages in varying difficulty.
⟡ CoderByte (http://www.coderbyte.com/) - A decent website with algorithm challenges from beginner to advanced levels. Supports most of the popular languages like C++, python, javascript, ruby.
⟡ Firecode (https://www.firecode.io/) - Firecode.io uses machine learning algorithms along with curated real-world interview questions, solutions & a vibrant social community of learners to get you ready for 
your next coding interview.
⟡ Firecode (https://www.firecode.io/) - Firecode.io uses machine learning algorithms along with curated real-world interview questions, solutions & a vibrant social community of learners to get you ready for your next coding interview.
⟡ Coding Blocks (https://hack.codingblocks.com/app/) - Website that has problems based on Maths, Data Structures, Various Algorithm and also conducts Coding Competition.
⟡ HackerEarth  (https://www.hackerearth.com/) - Practice algorithmic problems & challenges and participate in hiring challenges.
⟡ HackerRank (https://www.hackerrank.com/) - Featured algorithm and functional programming online judges
@@ -259,8 +249,8 @@
Related Awesome Lists
- Math (https://github.com/rossant/awesome-math#readme) - Freely available lecture notes on mathematics.
- Theoretical Computer Science (https://github.com/mostafatouny/awesome-theoretical-computer-science/blob/main/README.md) - The interdisciplinary of Mathematics and Computer Science, Distinguished by its 
emphasis on mathematical technique and rigour.
- Theoretical Computer Science (https://github.com/mostafatouny/awesome-theoretical-computer-science/blob/main/README.md) - The interdisciplinary of Mathematics and Computer Science, Distinguished by its emphasis on mathematical 
technique and rigour.
License