chore: sync content to repo (#9249)

Co-authored-by: kamranahmedse <4921183+kamranahmedse@users.noreply.github.com>
This commit is contained in:
github-actions[bot]
2025-10-20 11:30:44 +05:00
committed by GitHub
co-authored by kamranahmedse
parent e9ecc34629
commit 51fb82406e
176 changed files with 325 additions and 322 deletions
@@ -0,0 +1,9 @@
# 2-3-4 Search Trees
In practice: For every 2-4 tree, there are corresponding red–black trees with data elements in the same order. The insertion and deletion operations on 2-4 trees are also equivalent to color-flipping and rotations in red–black trees. This makes 2-4 trees an important tool for understanding the logic behind red–black trees, and this is why many introductory algorithm texts introduce 2-4 trees just before red–black trees, even though 2-4 trees are not often used in practice.
Visit the following resources to learn more:
- [@article@CS 61B Lecture 26: Balanced Search Trees](https://archive.org/details/ucberkeley_webcast_zqrqYXkth6Q)
- [@video@Bottom Up 234-Trees](https://www.youtube.com/watch?v=DQdMYevEyE4&index=4&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
- [@video@Top Down 234-Trees](https://www.youtube.com/watch?v=2679VQ26Fp4&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6&index=5)
@@ -1,9 +1,9 @@
# A\* Algorithm
# A* Algorithm
A\* is a graph traversal algorithm that is used to find the shortest path between two nodes in a graph. It is a modified version of Dijkstra's algorithm that uses heuristics to find the shortest path. It is used in pathfinding and graph traversal.
Visit the following resources to learn more:
- [@article@A\* Search Algorithm - Wikipedia](https://en.wikipedia.org/wiki/A*_search_algorithm)
- [@video@A\* Pathfinding (E01: algorithm explanation)](https://www.youtube.com/watch?v=-L-WgKMFuhE)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@article@A* Search Algorithm - Wikipedia](https://en.wikipedia.org/wiki/A*_search_algorithm)
- [@video@A* Pathfinding (E01: algorithm explanation)](https://www.youtube.com/watch?v=-L-WgKMFuhE)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@What is ACID Compliant Database?](https://retool.com/blog/whats-an-acid-compliant-database/)
- [@article@What is ACID Compliance?: Atomicity, Consistency, Isolation](https://fauna.com/blog/what-is-acid-compliance-atomicity-consistency-isolation)
- [@video@ACID Explained: Atomic, Consistent, Isolated & Durable](https://www.youtube.com/watch?v=yaQ5YMWkxq4)
- [@video@ACID Explained: Atomic, Consistent, Isolated & Durable](https://www.youtube.com/watch?v=yaQ5YMWkxq4)
@@ -5,4 +5,4 @@ Activity diagrams are used to model the flow of control in a system. They are us
Visit the following resources to learn more:
- [@article@UML Activity Diagram Tutorial](https://www.lucidchart.com/pages/uml-activity-diagram)
- [@article@What is Activity Diagram?](https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-activity-diagram/)
- [@article@What is Activity Diagram?](https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-activity-diagram/)
@@ -9,4 +9,4 @@ Adjacency list is an array of vectors. Size of the array is equal to the number
Visit the following resources to learn more:
- [@article@Adjacency Matrix - Graph Representation](https://www.programiz.com/dsa/graph-adjacency-matrix)
- [@article@Adjacency List - Graph Representation](https://www.programiz.com/dsa/graph-adjacency-list)
- [@article@Adjacency List - Graph Representation](https://www.programiz.com/dsa/graph-adjacency-list)
@@ -5,4 +5,4 @@ Architectural patterns are a high-level design pattern that focuses on the overa
Visit the following resources to learn more:
- [@article@10 Common Software Architectural Patterns in a nutshell](https://towardsdatascience.com/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013)
- [@article@Architectural Pattern - Wikipedia](https://en.wikipedia.org/wiki/Architectural_pattern)
- [@article@Architectural Pattern - Wikipedia](https://en.wikipedia.org/wiki/Architectural_pattern)
@@ -4,4 +4,4 @@ Architectural patterns are the fundamental organization of a system, defining ho
Visit the following resources to learn more:
- [@article@List of Software Architecture Styles and Patterns](https://en.wikipedia.org/wiki/List_of_software_architecture_styles_and_patterns)
- [@article@List of Software Architecture Styles and Patterns](https://en.wikipedia.org/wiki/List_of_software_architecture_styles_and_patterns)
@@ -4,10 +4,10 @@ Arrays store elements in contiguous memory locations, resulting in easily calcul
Visit the following resources to learn more:
- [@course@Array Data Structure - Coursera](https://www.coursera.org/lecture/data-structures/arrays-OsBSF)
- [@article@What is Array in Data Structure? Types & Syntax](https://www.simplilearn.com/tutorials/data-structure-tutorial/arrays-in-data-structure)
- [@video@Array Data Structure | Illustrated Data Structures](https://www.youtube.com/watch?v=QJNwK2uJyGs)
- [@video@Jagged Arrays](https://www.youtube.com/watch?v=1jtrQqYpt7g)
- [@video@Dynamic and Static Arrays](https://www.youtube.com/watch?v=PEnFFiQe1pM&list=PLDV1Zeh2NRsB6SWUrDFW2RmDotAfPbeHu&index=6)
- [@video@Dynamic Array Code](https://www.youtube.com/watch?v=tvw4v7FEF1w&list=PLDV1Zeh2NRsB6SWUrDFW2RmDotAfPbeHu&index=5)
- [@video@UC Berkeley CS61B - Linear and Multi-Dim Arrays (Start watching from 15m 32s)](https://archive.org/details/ucberkeley_webcast_Wp8oiO_CZZE)
- [@course@Array Data Structure - Coursera](https://www.coursera.org/lecture/data-structures/arrays-OsBSF)
- [@video@UC Berkeley CS61B - Linear and Multi-Dim Arrays (Start watching from 15m 32s)](https://archive.org/details/ucberkeley_webcast_Wp8oiO_CZZE)
@@ -5,4 +5,4 @@ ASCII is a character encoding standard for electronic communication. It was deve
Visit the following resources to learn more:
- [@article@Must Know about Character Encodings](https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/)
- [@article@Character Encoding](https://cs.lmu.edu/~ray/notes/charenc/)
- [@article@Character Encoding](https://cs.lmu.edu/~ray/notes/charenc/)
@@ -9,9 +9,9 @@ The study of change in performance of the algorithm with the change in the order
Visit the following resources to learn more:
- [@article@Asymptotic Analysis: Big-O Notation and More](https://www.programiz.com/dsa/asymptotic-notations)
- [@article@Big-O Cheat Sheet](https://www.bigocheatsheet.com/)
- [@article@Big O Notation | Brilliant Math & Science Wiki](https://brilliant.org/wiki/big-o-notation/)
- [@video@Big O Notation — Calculating Time Complexity](https://www.youtube.com/watch?v=Z0bH0cMY0E8)
- [@video@Big O Notation in 5 Minutes](https://www.youtube.com/watch?v=__vX2sjlpXU)
- [@video@Asymptotic Notation - CS50](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [@video@CS 61B Lecture 19: Asymptotic Analysis](https://archive.org/details/ucberkeley_webcast_VIS4YDpuP98)
- [@article@Big-O Cheat Sheet](https://www.bigocheatsheet.com/)
- [@article@Big O Notation | Brilliant Math & Science Wiki](https://brilliant.org/wiki/big-o-notation/)
- [@video@CS 61B Lecture 19: Asymptotic Analysis](https://archive.org/details/ucberkeley_webcast_VIS4YDpuP98)
@@ -6,8 +6,8 @@ In practice: From what I can tell, these aren't used much in practice, but I cou
Visit the following resources to learn more:
- [@article@AVL Tree - Programiz](https://www.programiz.com/dsa/avl-tree)
- [@video@MIT AVL Trees / AVL Sort](https://www.youtube.com/watch?v=FNeL18KsWPc&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=6)
- [@course@AVL Trees](https://www.coursera.org/learn/data-structures/lecture/Qq5E0/avl-trees)
- [@course@AVL Tree Implementation](https://www.coursera.org/learn/data-structures/lecture/PKEBC/avl-tree-implementation)
- [@course@Split And Merge](https://www.coursera.org/learn/data-structures/lecture/22BgE/split-and-merge)
- [@article@AVL Tree - Programiz](https://www.programiz.com/dsa/avl-tree)
- [@video@MIT AVL Trees / AVL Sort](https://www.youtube.com/watch?v=FNeL18KsWPc&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=6)
@@ -11,4 +11,4 @@ Visit the following resources to learn more:
- [@video@Introduction to B-Trees](https://www.youtube.com/watch?v=I22wEC1tTGo&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6&index=6)
- [@video@B-Tree Definition and Insertion](https://www.youtube.com/watch?v=s3bCdZGrgpA&index=7&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
- [@video@B-Tree Deletion](https://www.youtube.com/watch?v=svfnVhJOfMc&index=8&list=PLA5Lqm4uh9Bbq-E0ZnqTIa8LRaL77ica6)
- [@video@B-Trees (playlist) in 26 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
- [@video@B-Trees (playlist) in 26 minutes](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Self-balancing Binary Search Tree - Wikipedia](https://en.wikipedia.org/wiki/Self-balancing_binary_search_tree)
- [@video@Balanced Search Trees Operations and Applications 11 min](https://www.youtube.com/watch?v=IbNZ-x1I2IM)
- [@video@Balanced binary search tree rotations](https://www.youtube.com/watch?v=q4fnJZr8ztY)
- [@video@Balanced binary search tree rotations](https://www.youtube.com/watch?v=q4fnJZr8ztY)
@@ -4,4 +4,4 @@ A balanced binary tree, also referred to as a height-balanced binary tree, is de
Visit the following resources to learn more:
- [@article@Balanced Binary Tree](https://www.programiz.com/dsa/balanced-binary-tree)
- [@article@Balanced Binary Tree](https://www.programiz.com/dsa/balanced-binary-tree)
@@ -2,9 +2,9 @@
The rise in popularity of NoSQL databases provided a flexible and fluidity with ease to manipulate data and as a result, a new database model was designed, reflecting these properties. The acronym BASE is slightly more confusing than ACID but however, the words behind it suggest ways in which the BASE model is different and acronym BASE stands for:-
- **B**asically **A**vailable
- **S**oft state
- **E**ventual consistency
* **B**asically **A**vailable
* **S**oft state
* **E**ventual consistency
Visit the following resources to learn more:
@@ -4,18 +4,18 @@ Math is a fundamental skill for computer science.
Visit the following resources to learn more:
- [@video@Lec 1 | MIT 6.042J Mathematics for Computer Science, Fall 2010](https://www.youtube.com/watch?v=L3LMbpZIKhQ\&list=PLB7540DEDD482705B)
- [@video@Integer Arithmetic, Karatsuba Multiplication](https://www.youtube.com/watch?v=eCaXlAaN2uE\&index=11\&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
- [@video@The Chinese Remainder Theorem (used in cryptography)](https://www.youtube.com/watch?v=ru7mWZJlRQg)
- [@article@Computer Science 70, 001 - Spring 2015 - Discrete Mathematics and Probability Theory](http://www.infocobuild.com/education/audio-video-courses/computer-science/cs70-spring2015-berkeley.html)
- [@video@Discrete Mathematics by Shai Simonson (19 videos)](https://www.youtube.com/playlist?list=PLWX710qNZo_sNlSWRMVIh6kfTjolNaZ8t)
- [@article@Discrete Mathematics By IIT Ropar NPTEL](https://nptel.ac.in/courses/106/106/106106183/)
- [@video@MIT 6.042J - Probability Introduction](https://www.youtube.com/watch?v=SmFwFdESMHI\&index=18\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Conditional Probability](https://www.youtube.com/watch?v=E6FbvM-FGZ8\&index=19\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Independence](https://www.youtube.com/watch?v=l1BCv3qqW4A\&index=20\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Random Variables](https://www.youtube.com/watch?v=MOfhhFaQdjw\&list=PLB7540DEDD482705B\&index=21)
- [@video@MIT 6.042J - Expectation I](https://www.youtube.com/watch?v=gGlMSe7uEkA\&index=22\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Expectation II](https://www.youtube.com/watch?v=oI9fMUqgfxY\&index=23\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Large Deviations](https://www.youtube.com/watch?v=q4mwO2qS2z4\&index=24\&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Random Walks](https://www.youtube.com/watch?v=56iFMY8QW2k\&list=PLB7540DEDD482705B\&index=25)
- [@feed@Explore top posts about Math](https://app.daily.dev/tags/math?ref=roadmapsh)
- [@video@Lec 1 | MIT 6.042J Mathematics for Computer Science, Fall 2010](https://www.youtube.com/watch?v=L3LMbpZIKhQ&list=PLB7540DEDD482705B)
- [@video@Integer Arithmetic, Karatsuba Multiplication](https://www.youtube.com/watch?v=eCaXlAaN2uE&index=11&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
- [@video@The Chinese Remainder Theorem (used in cryptography)](https://www.youtube.com/watch?v=ru7mWZJlRQg)
- [@video@Discrete Mathematics by Shai Simonson (19 videos)](https://www.youtube.com/playlist?list=PLWX710qNZo_sNlSWRMVIh6kfTjolNaZ8t)
- [@video@MIT 6.042J - Probability Introduction](https://www.youtube.com/watch?v=SmFwFdESMHI&index=18&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Conditional Probability](https://www.youtube.com/watch?v=E6FbvM-FGZ8&index=19&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Independence](https://www.youtube.com/watch?v=l1BCv3qqW4A&index=20&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Random Variables](https://www.youtube.com/watch?v=MOfhhFaQdjw&list=PLB7540DEDD482705B&index=21)
- [@video@MIT 6.042J - Expectation I](https://www.youtube.com/watch?v=gGlMSe7uEkA&index=22&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Expectation II](https://www.youtube.com/watch?v=oI9fMUqgfxY&index=23&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Large Deviations](https://www.youtube.com/watch?v=q4mwO2qS2z4&index=24&list=PLB7540DEDD482705B)
- [@video@MIT 6.042J - Random Walks](https://www.youtube.com/watch?v=56iFMY8QW2k&list=PLB7540DEDD482705B&index=25)
- [@feed@Explore top posts about Math](https://app.daily.dev/tags/math?ref=roadmapsh)
@@ -4,6 +4,6 @@ Bellman ford's algorithm is a graph algorithm that finds the shortest path from
Visit the following resources to learn more:
- [@video@Bellman-Ford - MIT](https://www.youtube.com/watch?v=f9cVS_URPc0\&ab_channel=MITOpenCourseWare)
- [@video@Bellman-Ford - MIT](https://www.youtube.com/watch?v=f9cVS_URPc0&ab_channel=MITOpenCourseWare)
- [@video@Bellman-Ford in 4 Minutes](https://www.youtube.com/watch?v=9PHkk0UavIM)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -4,4 +4,4 @@ Big endian is the most common type of endianness. In this type, the most signifi
Visit the following resources to learn more:
- [@video@Lecture 22. Big Endian and Little Endian](https://www.youtube.com/watch?v=T1C9Kj_78ek)
- [@video@Lecture 22. Big Endian and Little Endian](https://www.youtube.com/watch?v=T1C9Kj_78ek)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@article@Big O Notation | Brilliant Math & Science Wiki](https://brilliant.org/wiki/big-o-notation/)
- [@video@Big O Notation — Calculating Time Complexity](https://www.youtube.com/watch?v=Z0bH0cMY0E8)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
@@ -4,6 +4,6 @@ The Big Omega notation is similar to the Big O notation. The only difference is
Visit the following resources to learn more:
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
- [@video@Asymptotic Notation - CS50](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [@article@Big O Notation | Brilliant Math & Science Wiki](https://brilliant.org/wiki/big-o-notation/)
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
- [@video@Asymptotic Notation - CS50](https://www.youtube.com/watch?v=iOq5kSKqeR4)
@@ -4,6 +4,6 @@ If a function has the same Big O and Big Omega, they also become the function's
Visit the following resources to learn more:
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
- [@video@Asymptotic Notation - CS50](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [@article@Big O Notation | Brilliant Math & Science Wiki](https://brilliant.org/wiki/big-o-notation/)
- [@video@Big Oh Notation (and Omega and Theta)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN&index=3)
- [@video@Asymptotic Notation - CS50](https://www.youtube.com/watch?v=iOq5kSKqeR4)
@@ -4,13 +4,13 @@ A binary search tree, also called an ordered or sorted binary tree, is a rooted
Visit the following resources to learn more:
- [@video@Tree | Illustrated Data Structures](https://www.youtube.com/watch?v=S2W3SXGPVyU)
- [@course@Binary Search Trees - Coursera](https://www.coursera.org/learn/data-structures/lecture/E7cXP/introduction)
- [@video@Tree | Illustrated Data Structures](https://www.youtube.com/watch?v=S2W3SXGPVyU)
- [@video@Binary Search Trees - MIT](https://www.youtube.com/watch?v=76dhtgZt38A)
- [@video@Binary Search Tree Implementation in C++](https://www.youtube.com/watch?v=COZK7NATh4k\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=29)
- [@video@BST implementation - memory allocation in stack and heap](https://www.youtube.com/watch?v=hWokyBoo0aI\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=30)
- [@video@Find Min and Max Element in Binary Search Tree](https://www.youtube.com/watch?v=Ut90klNN264\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=31)
- [@video@Check if Given Tree is Binary Search Tree or Not](https://www.youtube.com/watch?v=yEwSGhSsT0U\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=36)
- [@video@Delete an Element from Binary Search Tree](https://www.youtube.com/watch?v=gcULXE7ViZw\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=37)
- [@video@Inorder Successor in a binary search tree](https://www.youtube.com/watch?v=5cPbNCrdotA\&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P\&index=38)
- [@feed@Explore top posts about General Programming](https://app.daily.dev/tags/general-programming?ref=roadmapsh)
- [@video@Binary Search Tree Implementation in C++](https://www.youtube.com/watch?v=COZK7NATh4k&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=29)
- [@video@BST implementation - memory allocation in stack and heap](https://www.youtube.com/watch?v=hWokyBoo0aI&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=30)
- [@video@Find Min and Max Element in Binary Search Tree](https://www.youtube.com/watch?v=Ut90klNN264&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=31)
- [@video@Check if Given Tree is Binary Search Tree or Not](https://www.youtube.com/watch?v=yEwSGhSsT0U&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=36)
- [@video@Delete an Element from Binary Search Tree](https://www.youtube.com/watch?v=gcULXE7ViZw&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=37)
- [@video@Inorder Successor in a binary search tree](https://www.youtube.com/watch?v=5cPbNCrdotA&list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P&index=38)
- [@feed@Explore top posts about General Programming](https://app.daily.dev/tags/general-programming?ref=roadmapsh)
@@ -6,6 +6,6 @@ Visit the following resources to learn more:
- [@article@Binary Search - Khan Academy](https://www.khanacademy.org/computing/computer-science/algorithms/binary-search/a/binary-search)
- [@article@Binary Search](https://www.topcoder.com/thrive/articles/Binary%20Search)
- [@video@Binary Search in 4 Minutes](https://www.youtube.com/watch?v=fDKIpRe8GW4\&feature=youtu.be)
- [@video@Binary Search in 4 Minutes](https://www.youtube.com/watch?v=fDKIpRe8GW4&feature=youtu.be)
- [@video@Binary Search - CS50](https://www.youtube.com/watch?v=D5SrAga1pno)
- [@feed@Explore top posts about Binary Search](https://app.daily.dev/tags/binary-search?ref=roadmapsh)
- [@feed@Explore top posts about Binary Search](https://app.daily.dev/tags/binary-search?ref=roadmapsh)
@@ -4,6 +4,6 @@ A binary tree is a tree data structure in which each node has at most two childr
Visit the following resources to learn more:
- [@video@Binary Trees - Part 1](https://www.youtube.com/watch?v=76dhtgZt38A\&list=PLUl4u3cNGP63EdVPNLG3ToM6LaEUuStEY\&index=9)
- [@video@Binary Trees - Part 2](https://www.youtube.com/watch?v=U1JYwHcFfso\&list=PLUl4u3cNGP63EdVPNLG3ToM6LaEUuStEY\&index=10)
- [@feed@Explore top posts about Binary Tree](https://app.daily.dev/tags/binary-tree?ref=roadmapsh)
- [@video@Binary Trees - Part 1](https://www.youtube.com/watch?v=76dhtgZt38A&list=PLUl4u3cNGP63EdVPNLG3ToM6LaEUuStEY&index=9)
- [@video@Binary Trees - Part 2](https://www.youtube.com/watch?v=U1JYwHcFfso&list=PLUl4u3cNGP63EdVPNLG3ToM6LaEUuStEY&index=10)
- [@feed@Explore top posts about Binary Tree](https://app.daily.dev/tags/binary-tree?ref=roadmapsh)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@video@Bit Manipulation](https://www.youtube.com/watch?v=7jkIUgLC29I)
- [@video@Binary: Plusses & Minuses (Why We Use Twos Complement) - Computerphile](https://www.youtube.com/watch?v=lKTsv6iVxV4)
- [@video@Algorithms: Bit Manipulation](https://www.youtube.com/watch?v=NLKQEOgBAnw)
- [@video@Algorithms: Bit Manipulation](https://www.youtube.com/watch?v=NLKQEOgBAnw)
@@ -4,5 +4,5 @@ Boyer Moore algorithm is a string searching algorithm that is used to find the i
Visit the following resources to learn more:
- [@article@Boyer-Moore String-search Algorithm](https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_string-search_algorithm)
- [@course@Boyer Moore Algorithm](https://www.coursera.org/learn/algorithms-part2/lecture/CYxOT/boyer-moore)
- [@article@Boyer-Moore String-search Algorithm](https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_string-search_algorithm)
@@ -4,6 +4,6 @@ Breadth first search is a graph traversal algorithm that starts at the root node
Visit the following resources to learn more:
- [@video@BFS and DFS in a Binary Tree](https://www.youtube.com/watch?v=uWL6FJhq5fM)
- [@article@Breadth-First Search (BFS) and Depth-First Search (DFS) for Binary Trees in Java](https://www.digitalocean.com/community/tutorials/breadth-first-search-depth-first-search-bfs-dfs)
- [@video@Breadth-first search in 4 minutes](https://www.youtube.com/watch?v=HZ5YTanv5QE)
- [@video@BFS and DFS in a Binary Tree](https://www.youtube.com/watch?v=uWL6FJhq5fM)
- [@video@Breadth-first search in 4 minutes](https://www.youtube.com/watch?v=HZ5YTanv5QE)
@@ -5,4 +5,4 @@ Breadth first search for a graph is a way to traverse the graph. It starts at th
Visit the following resources to learn more:
- [@video@Graph Algorithms II - DFS, BFS, Kruskals Algorithm, Union Find Data Structure - Lecture 7](https://www.youtube.com/watch?v=ufj5_bppBsA&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=7)
- [@video@Breadth-first search in 4 minutes](https://www.youtube.com/watch?v=HZ5YTanv5QE)
- [@video@Breadth-first search in 4 minutes](https://www.youtube.com/watch?v=HZ5YTanv5QE)
@@ -4,6 +4,6 @@ Brute force search is a simple algorithm that checks for a pattern in a string b
Visit the following resources to learn more:
- [@article@A Beginner Guide to Brute Force Algorithm for Substring Search](https://nulpointerexception.com/2019/02/10/a-beginner-guide-to-brute-force-algorithm-for-substring-search/)
- [@article@Brute Force Algorithm in Cybersecurity and String Search](https://www.baeldung.com/cs/brute-force-cybersecurity-string-search)
- [@course@Brute-Force Substring Search](https://www.coursera.org/learn/algorithms-part2/lecture/2Kn5i/brute-force-substring-search)
- [@article@A Beginner Guide to Brute Force Algorithm for Substring Search](https://nulpointerexception.com/2019/02/10/a-beginner-guide-to-brute-force-algorithm-for-substring-search/)
- [@article@Brute Force Algorithm in Cybersecurity and String Search](https://www.baeldung.com/cs/brute-force-cybersecurity-string-search)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Bubble Sort Algorithm](https://www.programiz.com/dsa/bubble-sort)
- [@video@Bubble Sort](https://www.youtube.com/watch?v=P00xJgWzz2c&index=1&list=PL89B61F78B552C1AB)
- [@video@Bubble sort in 2 minutes](https://youtu.be/xli_FI7CuzA)
- [@video@Bubble sort in 2 minutes](https://youtu.be/xli_FI7CuzA)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@article@Cpp Reference](https://en.cppreference.com/)
- [@article@CPlusPlus](https://cplusplus.com/)
- [@article@C++ TutorialsPoint](https://www.tutorialspoint.com/cplusplus/index.htm)
- [@feed@Explore top posts about C++ Programming](https://app.daily.dev/tags/c++?ref=roadmapsh)
- [@feed@Explore top posts about C++ Programming](https://app.daily.dev/tags/c++?ref=roadmapsh)
@@ -1,4 +1,4 @@
# C\#
# C#
C# (pronounced "C sharp") is a general purpose programming language made by Microsoft. It is used to perform different tasks and can be used to create web apps, games, mobile apps, etc.
@@ -6,5 +6,5 @@ Visit the following resources to learn more:
- [@article@C# Learning Path](https://docs.microsoft.com/en-us/learn/paths/csharp-first-steps/?WT.mc_id=dotnet-35129-website)
- [@article@Introduction to C#](https://docs.microsoft.com/en-us/shows/CSharp-101/?WT.mc_id=Educationalcsharp-c9-scottha)
- [@video@C# tutorials](https://www.youtube.com/watch?v=gfkTfcpWqAY\&list=PLTjRvDozrdlz3_FPXwb6lX_HoGXa09Yef)
- [@feed@Explore top posts about C# Programming](https://app.daily.dev/tags/csharp?ref=roadmapsh)
- [@video@C# tutorials](https://www.youtube.com/watch?v=gfkTfcpWqAY&list=PLTjRvDozrdlz3_FPXwb6lX_HoGXa09Yef)
- [@feed@Explore top posts about C# Programming](https://app.daily.dev/tags/csharp?ref=roadmapsh)
@@ -4,9 +4,9 @@ C is a general-purpose computer programming language. It was created in the 1970
Visit the following resources to learn more:
- [@book@Beej's Guide to C Programming](https://beej.us/guide/bgc/)
- [@article@Learn C - Tutorials Point](https://www.tutorialspoint.com/cprogramming/index.htm)
- [@video@C Programming Tutorial for Beginners](https://www.youtube.com/watch?v=KJgsSFOSQv0)
- [@video@Learn C Programming with Dr. Chuck](https://www.youtube.com/watch?v=j-_s8f5K30I)
- [@video@C Programming Full Course (Bro Code)](https://youtu.be/87SH2Cn0s9A)
- [@book@Beej's Guide to C Programming](https://beej.us/guide/bgc/)
- [@feed@Explore top posts about C Programming](https://app.daily.dev/tags/c?ref=roadmapsh)
- [@feed@Explore top posts about C Programming](https://app.daily.dev/tags/c?ref=roadmapsh)
@@ -5,4 +5,4 @@ Caching is a way of storing data in a temporary storage to make future requests
Visit the following resources to learn more:
- [@article@System Design - Caching](https://dev.to/karanpratapsingh/system-design-the-complete-course-10fo#caching)
- [@video@What is Caching | System Design Basics](https://www.youtube.com/watch?v=joifNgoXXFk)
- [@video@What is Caching | System Design Basics](https://www.youtube.com/watch?v=joifNgoXXFk)
@@ -5,4 +5,4 @@ The CAP theorem states that it is impossible for a distributed data store to sim
Visit the following resources to learn more:
- [@article@CAP Theorem](https://en.wikipedia.org/wiki/CAP_theorem)
- [@video@What is CAP Theorem?](https://www.youtube.com/watch?v=_RbsFXWRZ10)
- [@video@What is CAP Theorem?](https://www.youtube.com/watch?v=_RbsFXWRZ10)
@@ -8,4 +8,4 @@ Visit the following resources to learn more:
- [@article@CAP Theorem - Wikipedia](https://en.wikipedia.org/wiki/CAP_theorem)
- [@article@An Illustrated Proof of the CAP Theorem](https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/)
- [@article@CAP Theorem and its applications in NoSQL Databases](https://www.ibm.com/uk-en/cloud/learn/cap-theorem)
- [@video@What is CAP Theorem?](https://www.youtube.com/watch?v=_RbsFXWRZ10)
- [@video@What is CAP Theorem?](https://www.youtube.com/watch?v=_RbsFXWRZ10)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@What is a CDN?](https://www.cloudflare.com/learning/cdn/what-is-a-cdn/)
- [@article@Content Delivery Network (CDN) - System Design](https://dev.to/karanpratapsingh/system-design-the-complete-course-10fo#content-delivery-network-cdn)
- [@video@Content Delivery Networks](https://www.youtube.com/watch?v=6DXEPcXKQNY)
- [@video@Content Delivery Networks](https://www.youtube.com/watch?v=6DXEPcXKQNY)
@@ -5,4 +5,4 @@ Character encodings are a way of representing characters as numbers. They are us
Visit the following resources to learn more:
- [@article@Must Know about Character Encodings](https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/)
- [@article@Character Encoding](https://cs.lmu.edu/~ray/notes/charenc/)
- [@article@Character Encoding](https://cs.lmu.edu/~ray/notes/charenc/)
@@ -5,4 +5,4 @@ Class Diagrams are used to model the static structure of a system. They are used
Visit the following resources to learn more:
- [@article@Class Diagrams](https://www.visual-paradigm.com/guide/uml-unified-modeling-language/uml-class-diagram-tutorial/)
- [@video@UML Class Diagram Tutorial](https://www.youtube.com/watch?v=UI6lqHOVHic)
- [@video@UML Class Diagram Tutorial](https://www.youtube.com/watch?v=UI6lqHOVHic)
@@ -7,4 +7,4 @@ The link below has cloud design patterns where each pattern describes the proble
Visit the following resources to learn more:
- [@article@Cloud Design Patterns](https://learn.microsoft.com/en-us/azure/architecture/patterns/)
- [@feed@Explore top posts about Cloud](https://app.daily.dev/tags/cloud?ref=roadmapsh)
- [@feed@Explore top posts about Cloud](https://app.daily.dev/tags/cloud?ref=roadmapsh)
@@ -4,4 +4,4 @@ At a high level, a computer cluster is a group of two or more computers, or node
Visit the following resources to learn more:
- [@article@System Design: Clustering](https://dev.to/karanpratapsingh/system-design-clustering-3726)
- [@article@System Design: Clustering](https://dev.to/karanpratapsingh/system-design-clustering-3726)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@video@Complexity: Approximation Algorithms](https://www.youtube.com/watch?v=MEz1J9wY2iM&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=24)
- [@video@Complexity: Fixed-Parameter Algorithms](https://www.youtube.com/watch?v=4q-jmGrmxKs&index=25&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
- [@video@Lecture 23: Computational Complexity](https://www.youtube.com/watch?v=moPtwq_cVH8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=24)
- [@video@Greedy Algs. II & Intro to NP Completeness](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939)
- [@video@Greedy Algs. II & Intro to NP Completeness](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939)
@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@article@Probability and Combinatorics](https://www.khanacademy.org/math/probability/probability-and-combinatorics-topic)
- [@video@Math Skills: How to find Factorial, Permutation and Combination](https://www.youtube.com/watch?v=8RRo6Ti9d0U)
- [@video@Make School: Probability](https://www.youtube.com/watch?v=sZkAAk9Wwa4)
- [@video@Make School: More Probability and Markov Chains](https://www.youtube.com/watch?v=dNaJg-mLobQ)
- [@video@Make School: More Probability and Markov Chains](https://www.youtube.com/watch?v=dNaJg-mLobQ)
@@ -2,18 +2,18 @@
Here are some common algorithms that you should know. You can find more information about them in the Algorithms section of the Computer Science course.
- Sorting
- Recursion
- Searching
- Cache Algorithms
- Tree Algorithms
- Graph Algorithms
- Greedy Algorithms
- Backtracking
- Substring Search
- Suffix Arrays
- Dynamic Programming
* Sorting
* Recursion
* Searching
* Cache Algorithms
* Tree Algorithms
* Graph Algorithms
* Greedy Algorithms
* Backtracking
* Substring Search
* Suffix Arrays
* Dynamic Programming
Visit the following resources to learn more:
- [@article@Top Algorithms and Data Structures](https://medium.com/data-science/top-algorithms-and-data-structures-you-really-need-to-know-ab9a2a91c7b5)
- [@article@Top Algorithms and Data Structures](https://medium.com/data-science/top-algorithms-and-data-structures-you-really-need-to-know-ab9a2a91c7b5)
@@ -5,4 +5,4 @@ UML is a standard way of visualizing a software system. It is a general-purpose,
Visit the following resources to learn more:
- [@article@Unified Modeling Language (UML) Description](https://www.uml-diagrams.org/)
- [@video@UML Diagrams Full Course (Unified Modeling Language)](https://www.youtube.com/watch?v=WnMQ8HlmeXc)
- [@video@UML Diagrams Full Course (Unified Modeling Language)](https://www.youtube.com/watch?v=WnMQ8HlmeXc)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@video@Complexity: Approximation Algorithms](https://www.youtube.com/watch?v=MEz1J9wY2iM&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=24)
- [@video@Complexity: Fixed-Parameter Algorithms](https://www.youtube.com/watch?v=4q-jmGrmxKs&index=25&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp)
- [@video@Lecture 23: Computational Complexity](https://www.youtube.com/watch?v=moPtwq_cVH8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=24)
- [@video@Greedy Algs. II & Intro to NP Completeness](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939)
- [@video@Greedy Algs. II & Intro to NP Completeness](https://youtu.be/qcGnJ47Smlo?list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=2939)
@@ -5,4 +5,4 @@ Constant time algorithms are the simplest and most efficient algorithms. They ar
Visit the following resources to learn more:
- [@video@Big O Notation — Calculating Time Complexity](https://www.youtube.com/watch?v=Z0bH0cMY0E8)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
@@ -5,6 +5,6 @@ A CPU cache is a hardware cache used by the central processing unit of a compute
Visit the following resources to learn more:
- [@article@What is CPU Cache](https://www.howtogeek.com/854138/what-is-cpu-cache/)
- [@video@MIT 6.004 L15: The Memory Hierarchy](https://www.youtube.com/watch?v=vjYF_fAZI5E\&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-\&index=24)
- [@video@MIT 6.004 L16: Cache Issues](https://www.youtube.com/watch?v=ajgC3-pyGlk\&index=25\&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
- [@video@MIT 6.004 L15: The Memory Hierarchy](https://www.youtube.com/watch?v=vjYF_fAZI5E&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-&index=24)
- [@video@MIT 6.004 L16: Cache Issues](https://www.youtube.com/watch?v=ajgC3-pyGlk&index=25&list=PLrRW1w6CGAcXbMtDFj205vALOGmiRc82-)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@System Interrupts 100% CPU](https://www.wikihow.com/System-Interrupts-100-Cpu)
- [@video@Interrupts](https://youtu.be/iKlAWIKEyuw)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
@@ -6,6 +6,6 @@ Visit the following resources to learn more:
- [@roadmap@Visit Dedicated DSA Roadmap](https://roadmap.sh/datastructures-and-algorithms)
- [@course@Data Structures and Algorithms By Google](https://techdevguide.withgoogle.com/paths/data-structures-and-algorithms/)
- [@video@Data Structures Illustrated](https://www.youtube.com/watch?v=9rhT3P1MDHk\&list=PLkZYeFmDuaN2-KUIv-mvbjfKszIGJ4FaY)
- [@video@Data Structures Illustrated](https://www.youtube.com/watch?v=9rhT3P1MDHk&list=PLkZYeFmDuaN2-KUIv-mvbjfKszIGJ4FaY)
- [@video@Data Structures playlist](https://youtube.com/playlist?list=PLDV1Zeh2NRsB6SWUrDFW2RmDotAfPbeHu&si=_EEf7x58G6lUcMGG)
- [@feed@Explore top posts about Data Structures](https://app.daily.dev/tags/data-structures?ref=roadmapsh)
- [@feed@Explore top posts about Data Structures](https://app.daily.dev/tags/data-structures?ref=roadmapsh)
@@ -5,4 +5,4 @@ Federation (or functional partitioning) splits up databases by function. The fed
Visit the following resources to learn more:
- [@article@Database Federation](https://dev.to/karanpratapsingh/system-design-the-complete-course-10fo#database-federation)
- [@feed@Explore top posts about Database](https://app.daily.dev/tags/database?ref=roadmapsh)
- [@feed@Explore top posts about Database](https://app.daily.dev/tags/database?ref=roadmapsh)
@@ -6,5 +6,5 @@ Visit the following resources to learn more:
- [@article@What is a Database?](https://www.oracle.com/database/what-is-database/)
- [@article@What are Databases?](https://www.prisma.io/dataguide/intro/what-are-databases)
- [@video@DBMS by Stanford](https://www.youtube.com/watch?v=D-k-h0GuFmE\&list=PL9ysvtVnryGpnIj9rcIqNDxakUn6v72Hm)
- [@feed@Explore top posts about Backend Development](https://app.daily.dev/tags/backend?ref=roadmapsh)
- [@video@DBMS by Stanford](https://www.youtube.com/watch?v=D-k-h0GuFmE&list=PL9ysvtVnryGpnIj9rcIqNDxakUn6v72Hm)
- [@feed@Explore top posts about Backend Development](https://app.daily.dev/tags/backend?ref=roadmapsh)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Dependency Injection - StackOverflow](https://stackoverflow.com/questions/130794/what-is-dependency-injection)
- [@video@What is Dependency Injection?](https://www.youtube.com/watch?v=0yc2UANSDiw)
- [@feed@Explore top posts about Dependency Injection](https://app.daily.dev/tags/dependency-injection?ref=roadmapsh)
- [@feed@Explore top posts about Dependency Injection](https://app.daily.dev/tags/dependency-injection?ref=roadmapsh)
@@ -4,4 +4,4 @@ Depth first search is a graph traversal algorithm that starts at a root node and
Visit the following resources to learn more:
- [@wiki@Depth-first Search](https://en.wikipedia.org/wiki/Depth-first_search)
- [@article@Depth-first Search](https://en.wikipedia.org/wiki/Depth-first_search)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Breadth-First Search (BFS) and Depth-First Search (DFS) for Binary Trees in Java](https://www.digitalocean.com/community/tutorials/breadth-first-search-depth-first-search-bfs-dfs)
- [@video@BFS and DFS in a Binary Tree](https://www.youtube.com/watch?v=uWL6FJhq5fM)
- [@video@Depth First Search in 4 Minutes](https://www.youtube.com/watch?v=Urx87-NMm6c)
- [@video@Depth First Search in 4 Minutes](https://www.youtube.com/watch?v=Urx87-NMm6c)
@@ -4,7 +4,7 @@ Design patterns are solutions to common problems in software design. They are fo
Visit the following resources to learn more:
- [@article@Design Patterns](https://en.wikipedia.org/wiki/Software_design_pattern)
- [@opensource@Design Patterns for Humans](https://github.com/kamranahmedse/design-patterns-for-humans)
- [@article@Design Patterns](https://en.wikipedia.org/wiki/Software_design_pattern)
- [@article@Refactoring Guru - Design Patterns](https://refactoring.guru/design-patterns/)
- [@feed@Explore top posts about Design Patterns](https://app.daily.dev/tags/design-patterns?ref=roadmapsh)
- [@feed@Explore top posts about Design Patterns](https://app.daily.dev/tags/design-patterns?ref=roadmapsh)
@@ -5,6 +5,6 @@ Dijkstra's algorithm is a greedy algorithm that finds the shortest path between
Visit the following resources to learn more:
- [@video@Dijkstras Algorithm in 3 Minutes](https://www.youtube.com/watch?v=_lHSawdgXpI)
- [@video@Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=NSHizBK9JD8\&t=1731s\&ab_channel=MITOpenCourseWare)
- [@video@Speeding Up Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=CHvQ3q_gJ7E\&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb\&index=18)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@video@Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=NSHizBK9JD8&t=1731s&ab_channel=MITOpenCourseWare)
- [@video@Speeding Up Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=CHvQ3q_gJ7E&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=18)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -4,6 +4,6 @@ Dijkstra's algorithm is a graph traversal algorithm that finds the shortest path
Visit the following resources to learn more:
- [@video@Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=NSHizBK9JD8\&t=1731s\&ab_channel=MITOpenCourseWare)
- [@video@Dijkstras Algorithm - MIT](https://www.youtube.com/watch?v=NSHizBK9JD8&t=1731s&ab_channel=MITOpenCourseWare)
- [@video@Dijkstras Algorithm in 3 Minutes](https://www.youtube.com/watch?v=_lHSawdgXpI)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -4,4 +4,4 @@ A directed graph is graph, i.e., a set of objects (called vertices or nodes) tha
Visit the following resources to learn more:
- [@article@Directed Graph](https://en.wikipedia.org/wiki/Directed_graph)
- [@article@Directed Graph](https://en.wikipedia.org/wiki/Directed_graph)
@@ -5,4 +5,4 @@ The SQL commands that manipulate data in the database belong to DML, or Data Man
Visit the following resources to learn more:
- [@article@DML: Data Manipulation Language](https://satoricyber.com/glossary/dml-data-manipulation-language)
- [@article@Difference Between DDL and DML](https://appmaster.io/blog/difference-between-ddl-and-dml)
- [@article@Difference Between DDL and DML](https://appmaster.io/blog/difference-between-ddl-and-dml)
@@ -1,6 +1,6 @@
# DNS
The Domain Name System (DNS) is the phonebook of the Internet. Humans access information online through domain names, like nytimes.com or espn.com. Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.
The Domain Name System (DNS) is the phonebook of the Internet. Humans access information online through domain names, like [nytimes.com](http://nytimes.com) or [espn.com](http://espn.com). Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.
Visit the following resources to learn more:
@@ -8,5 +8,5 @@ Visit the following resources to learn more:
- [@article@How DNS works (comic)](https://howdns.works/)
- [@video@DNS and How does it Work?](https://www.youtube.com/watch?v=Wj0od2ag5sk)
- [@video@DNS Records](https://www.youtube.com/watch?v=7lxgpKh_fRY)
- [@video@Complete DNS mini-series](https://www.youtube.com/watch?v=zEmUuNFBgN8\&list=PLTk5ZYSbd9MhMmOiPhfRJNW7bhxHo4q-K)
- [@feed@Explore top posts about DNS](https://app.daily.dev/tags/dns?ref=roadmapsh)
- [@video@Complete DNS mini-series](https://www.youtube.com/watch?v=zEmUuNFBgN8&list=PLTk5ZYSbd9MhMmOiPhfRJNW7bhxHo4q-K)
- [@feed@Explore top posts about DNS](https://app.daily.dev/tags/dns?ref=roadmapsh)
@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@article@Endianness](https://developer.mozilla.org/en-US/docs/Glossary/Endianness)
- [@article@Big-Endian vs Little-Endian Explained with Examples](https://www.freecodecamp.org/news/what-is-endianness-big-endian-vs-little-endian/)
- [@video@Big Endian vs Little Endian.mp4](https://www.youtube.com/watch?v=JrNF0KRAlyo)
- [@video@Endianness Explained With an Egg - Computerphile](https://www.youtube.com/watch?v=NcaiHcBvDR4)
- [@video@Endianness Explained With an Egg - Computerphile](https://www.youtube.com/watch?v=NcaiHcBvDR4)
@@ -5,4 +5,4 @@ Entity relationship model is a high-level data model that describes the logical
Visit the following resources to learn more:
- [@video@Entity Relationship Diagram (ERD) Tutorial - Part 1](https://www.youtube.com/watch?v=QpdhBUYk7Kk)
- [@video@Entity Relationship Diagram (ERD) Tutorial - Part 2](https://www.youtube.com/watch?v=-CuY5ADwn24)
- [@video@Entity Relationship Diagram (ERD) Tutorial - Part 2](https://www.youtube.com/watch?v=-CuY5ADwn24)
@@ -2,16 +2,15 @@
Exponential algorithms are those that grow at a rate of 2^n. This means that for each additional input, the algorithm will take twice as long to run. The following function is an example of an exponential algorithm:
```python
def exponential(n):
if n == 0:
return 1
return exponential(n - 1) + exponential(n - 1)
```
def exponential(n):
if n == 0:
return 1
return exponential(n - 1) + exponential(n - 1)
As you can see, the algorithm's runtime grows exponentially. For each additional input, the algorithm will take twice as long to run.
Visit the following resources to learn more:
- [@video@Big O Notation — Calculating Time Complexity](https://www.youtube.com/watch?v=Z0bH0cMY0E8)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
@@ -2,30 +2,28 @@
Factorial complexity algorithms have a runtime of `O(n!)`. This is the worst case scenario for an algorithm. Factorial complexity algorithms are very inefficient and should be avoided.
```python
def generate_permutations(s):
# Base case: If the string length is 1, return a list containing the string
if len(s) == 1:
return [s]
# Initialize the result list
permutations = []
# Recursively generate all permutations
for i in range(len(s)):
# Current character
current_char = s[i]
# Remaining characters
remaining_chars = s[:i] + s[i + 1 :]
# Generate all permutations of the remaining characters
for perm in generate_permutations(remaining_chars):
# Add the current character to the front of each generated permutation
permutations.append(current_char + perm)
return permutations
```
def generate_permutations(s):
# Base case: If the string length is 1, return a list containing the string
if len(s) == 1:
return [s]
# Initialize the result list
permutations = []
# Recursively generate all permutations
for i in range(len(s)):
# Current character
current_char = s[i]
# Remaining characters
remaining_chars = s[:i] + s[i + 1 :]
# Generate all permutations of the remaining characters
for perm in generate_permutations(remaining_chars):
# Add the current character to the front of each generated permutation
permutations.append(current_char + perm)
return permutations
Visit the following resources to learn more:
- [@article@Big O Cheat Sheet - Time Complexity Chart](https://www.freecodecamp.org/news/big-o-cheat-sheet-time-complexity-chart/)
- [@video@Factorial Explained](https://www.youtube.com/watch?v=pxh__ugRKz8)
- [@video@Factorial Explained](https://www.youtube.com/watch?v=pxh__ugRKz8)
@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@article@Hamiltonian Cycles](https://en.wikipedia.org/wiki/Hamiltonian_cycle)
- [@article@Hamiltonian Path](https://www.hackerearth.com/practice/algorithms/graphs/hamiltonian-path/tutorial/)
- [@article@Hamiltonian Paths and Cycles](https://medium.com/stamatics-iit-kanpur/hamiltonian-paths-and-cycles-4f233bfbc53a)
- [@article@Hamiltonian Paths - Lecture 7](https://people.csail.mit.edu/virgi/6.s078/lecture17.pdf)
- [@article@Hamiltonian Paths - Lecture 7](https://people.csail.mit.edu/virgi/6.s078/lecture17.pdf)
@@ -5,4 +5,4 @@ Floating point numbers are numbers that have a decimal point in them. They are u
Visit the following resources to learn more:
- [@video@Representation of Floating Point Numbers - 1](https://www.youtube.com/watch?v=ji3SfClm8TU)
- [@video@Why 0.1 + 0.2 != 0.3? | Floating Point Math](https://www.youtube.com/watch?v=RIiq4tTt6rI)
- [@video@Why 0.1 + 0.2 != 0.3? | Floating Point Math](https://www.youtube.com/watch?v=RIiq4tTt6rI)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Ford-Fulkerson Algorithm](https://www.programiz.com/dsa/ford-fulkerson-algorithm)
- [@video@Ford-Fulkerson in 5 minutes](https://www.youtube.com/watch?v=Tl90tNtKvxs)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -4,4 +4,4 @@ A full Binary tree is a special type of binary tree in which every parent node/i
Visit the following resources to learn more:
- [@article@Full Binary Tree](https://www.programiz.com/dsa/full-binary-tree)
- [@article@Full Binary Tree](https://www.programiz.com/dsa/full-binary-tree)
@@ -10,4 +10,4 @@ Visit the following resources to learn more:
- [@article@Go by Example - annotated example programs](https://gobyexample.com/)
- [@article@Making a RESTful JSON API in Go](https://thenewstack.io/make-a-restful-json-api-go/)
- [@article@Go, the Programming Language of the Cloud](https://thenewstack.io/go-the-programming-language-of-the-cloud/)
- [@feed@Explore top posts about Golang](https://app.daily.dev/tags/golang?ref=roadmapsh)
- [@feed@Explore top posts about Golang](https://app.daily.dev/tags/golang?ref=roadmapsh)
@@ -4,4 +4,4 @@ Gang of Four (GoF) design patterns are a set of 23 design patterns that were fir
Visit the following resources to learn more:
- [@opensource@Design Patterns for Humans](https://github.com/kamranahmedse/design-patterns-for-humans)
- [@opensource@Design Patterns for Humans](https://github.com/kamranahmedse/design-patterns-for-humans)
@@ -12,4 +12,4 @@ Visit the following resources to learn more:
- [@video@CSE373 2020 - Lecture 13 - Minimum Spanning Trees](https://www.youtube.com/watch?v=oolm2VnJUKw&list=PLOtl7M3yp-DX6ic0HGT0PUX_wiNmkWkXx&index=13)
- [@video@CSE373 2020 - Lecture 14 - Minimum Spanning Trees (cont)](https://www.youtube.com/watch?v=RktgPx0MarY&list=PLOtl7M3yp-DX6ic0HGT0PUX_wiNmkWkXx&index=14)
- [@video@CSE373 2020 - Lecture 15 - Graph Algorithms (cont 2)](https://www.youtube.com/watch?v=MUe5DXRhyAo&list=PLOtl7M3yp-DX6ic0HGT0PUX_wiNmkWkXx&index=15)
- [@video@6.006 Single-Source Shortest Paths Problem](https://www.youtube.com/watch?v=Aa2sqUhIn-E&index=15&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
- [@video@6.006 Single-Source Shortest Paths Problem](https://www.youtube.com/watch?v=Aa2sqUhIn-E&index=15&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb)
@@ -8,4 +8,4 @@ Visit the following resources to learn more:
- [@official@GraphQL](https://graphql.org/)
- [@official@GraphQL Documentation](https://graphql.org/learn/)
- [@article@Apollo GraphQL Tutorials](https://www.apollographql.com/tutorials/)
- [@feed@Explore top posts about GraphQL](https://app.daily.dev/tags/graphql?ref=roadmapsh)
- [@feed@Explore top posts about GraphQL](https://app.daily.dev/tags/graphql?ref=roadmapsh)
@@ -12,4 +12,4 @@ Visit the following resources to learn more:
- [@official@gRPC Introduction](https://grpc.io/docs/what-is-grpc/introduction/)
- [@official@gRPC Core Concepts](https://grpc.io/docs/what-is-grpc/core-concepts/)
- [@video@Stephane Maarek - gRPC Introduction](https://youtu.be/XRXTsQwyZSU)
- [@feed@Explore top posts about gRPC](https://app.daily.dev/tags/grpc?ref=roadmapsh)
- [@feed@Explore top posts about gRPC](https://app.daily.dev/tags/grpc?ref=roadmapsh)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@video@Hash Table in 4 Minutes](https://youtu.be/knV86FlSXJ8)
- [@video@Hashing with Chaining](https://www.youtube.com/watch?v=0M_kIqhwbFo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=9)
- [@video@(Advanced) Randomization: Universal & Perfect Hashing](https://www.youtube.com/watch?v=z0lJ2k0sl1g&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=11)
- [@video@(Advanced) Perfect hashing](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
- [@video@(Advanced) Perfect hashing](https://www.youtube.com/watch?v=N0COwN14gt0&list=PL2B4EEwhKD-NbwZ4ezj7gyc_3yNrojKM9&index=4)
@@ -9,4 +9,4 @@ Encoding is a two-way function that takes an input and produces an output. The o
Visit the following resources to learn more:
- [@video@Encoding, Encryption and Hashing -- Whats the Difference?](https://www.youtube.com/watch?v=-bAnBzvMLig)
- [@feed@Explore top posts about Encryption](https://app.daily.dev/tags/encryption?ref=roadmapsh)
- [@feed@Explore top posts about Encryption](https://app.daily.dev/tags/encryption?ref=roadmapsh)
@@ -8,4 +8,4 @@ Visit the following resources to learn more:
- [@video@Hashing Algorithms and Security - Computerphile](https://www.youtube.com/watch?v=b4b8ktEV4Bg)
- [@video@Top Hashing Algorithms In Cryptography | MD5 and SHA 256 Algorithms Expalined | Simplilearn](https://www.youtube.com/watch?v=Plp4F3ZfC7A)
- [@video@SHA: Secure Hashing Algorithm - Computerphile](https://www.youtube.com/watch?v=DMtFhACPnTY)
- [@feed@Explore top posts about Algorithms](https://app.daily.dev/tags/algorithms?ref=roadmapsh)
- [@feed@Explore top posts about Algorithms](https://app.daily.dev/tags/algorithms?ref=roadmapsh)
@@ -4,8 +4,8 @@ Heap sort is a comparison based sorting algorithm. It is similar to selection so
Visit the following resources to learn more:
- [@course@Heap Sort Algorithm](https://www.coursera.org/lecture/data-structures/heap-sort-hSzMO)
- [@article@Heap Sort Algorithm](https://www.programiz.com/dsa/heap-sort)
- [@video@Heap Sort in 4 Minutes](https://www.youtube.com/watch?v=2DmK_H7IdTo)
- [@video@Heap Sort Algorithm - MIT](https://www.youtube.com/watch?v=odNJmw5TOEE&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&t=3291s)
- [@course@Heap Sort Algorithm](https://www.coursera.org/lecture/data-structures/heap-sort-hSzMO)
- [@video@Lecture 4 - Heaps and Heap Sort](https://www.youtube.com/watch?v=B7hVxCmfPtM&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=5)
- [@video@Lecture 4 - Heaps and Heap Sort](https://www.youtube.com/watch?v=B7hVxCmfPtM&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=5)
@@ -4,8 +4,8 @@ Heap is a tree-based data structure that follows the properties of a complete bi
Visit the following resources to learn more:
- [@course@Priority Queue - Introduction](https://www.coursera.org/lecture/data-structures/introduction-2OpTs)
- [@article@Heap Data Structure](https://www.programiz.com/dsa/heap-data-structure)
- [@article@CS 61B Lecture 24: Priority Queues](https://archive.org/details/ucberkeley_webcast_yIUFT6AKBGE)
- [@video@Heap | Illustrated Data Structures](https://www.youtube.com/watch?v=F_r0sJ1RqWk)
- [@video@Heaps and Heap Sort](https://www.youtube.com/watch?v=B7hVxCmfPtM&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=5)
- [@course@Priority Queue - Introduction](https://www.coursera.org/lecture/data-structures/introduction-2OpTs)
- [@video@Heaps and Heap Sort](https://www.youtube.com/watch?v=B7hVxCmfPtM&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=5)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Scaling Horizontally vs. Scaling Vertically](https://www.digitalocean.com/resources/article/horizontal-scaling-vs-vertical-scaling)
- [@video@System Design Basics: Horizontal vs. Vertical Scaling](https://www.youtube.com/watch?v=xpDnVSmNFX0)
- [@video@Vertical vs. Horizontal Scaling for Database Servers](https://www.youtube.com/watch?v=R99R-SNbo9g)
- [@video@Vertical vs. Horizontal Scaling for Database Servers](https://www.youtube.com/watch?v=R99R-SNbo9g)
@@ -5,4 +5,4 @@ Computers calculate using the binary system, where all data is represented as 0s
Visit the following resources to learn more:
- [@article@How Does A Computer Calculate Numbers?](https://www.sciencing.com/computer-calculate-numbers-4705975/)
- [@video@How Computers Calculate - ALU](https://youtu.be/1I5ZMmrOfnA)
- [@video@How Computers Calculate - ALU](https://youtu.be/1I5ZMmrOfnA)
@@ -8,4 +8,4 @@ Visit the following resources to learn more:
- [@video@How Computers Calculate - ALU](https://youtu.be/1I5ZMmrOfnA)
- [@video@Registers and RAM](https://youtu.be/fpnE6UAfbtU)
- [@video@The Central Processing Unit (CPU)](https://youtu.be/FZGugFqdr60)
- [@video@Instructions and Programs](https://youtu.be/zltgXvg6r3k)
- [@video@Instructions and Programs](https://youtu.be/zltgXvg6r3k)
@@ -5,4 +5,4 @@ The CPU executes programs by repeatedly fetching instructions from memory, decod
Visit the following resources to learn more:
- [@video@How CPU Executes a Program](https://www.youtube.com/watch?v=XM4lGflQFvA)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
- [@feed@Explore top posts about Computing](https://app.daily.dev/tags/computing?ref=roadmapsh)
@@ -9,4 +9,4 @@ Visit the following resources to learn more:
- [@article@An overview of HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview)
- [@article@HTTP/3 From A To Z: Core Concepts](https://www.smashingmagazine.com/2021/08/http3-core-concepts-part1/)
- [@video@HTTP/1 to HTTP/2 to HTTP/3](https://www.youtube.com/watch?v=a-sBfyiXysI)
- [@video@HTTP Crash Course & Exploration](https://www.youtube.com/watch?v=iYM2zFP3Zn0)
- [@video@HTTP Crash Course & Exploration](https://www.youtube.com/watch?v=iYM2zFP3Zn0)
@@ -5,4 +5,4 @@ Huffman coding is a lossless data compression algorithm. The idea is to assign v
Visit the following resources to learn more:
- [@article@Huffman Coding](https://www.programiz.com/dsa/huffman-coding)
- [@video@Huffman Coding - Greedy Method](https://www.youtube.com/watch?v=co4_ahEDCho)
- [@video@Huffman Coding - Greedy Method](https://www.youtube.com/watch?v=co4_ahEDCho)
@@ -5,4 +5,4 @@ In-order traversal is a tree traversal algorithm that visits the left subtree, t
Visit the following resources to learn more:
- [@article@Tree Traversal Techniques](https://www.geeksforgeeks.org/tree-traversals-inorder-preorder-and-postorder/)
- [@video@Tree | Illustrated Data Structures](https://www.youtube.com/watch?v=S2W3SXGPVyU)
- [@video@Tree | Illustrated Data Structures](https://www.youtube.com/watch?v=S2W3SXGPVyU)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Insertion Sort](https://www.programiz.com/dsa/insertion-sort)
- [@video@Insertion Sort — MIT](https://www.youtube.com/watch?v=Kg4bqzAqRBM&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=4)
- [@video@Insertion Sort in 3 Minutes](https://www.youtube.com/watch?v=JU767SDMDvA)
- [@video@Insertion Sort in 3 Minutes](https://www.youtube.com/watch?v=JU767SDMDvA)
@@ -1,6 +1,6 @@
# Instructions and Programs
Instructions are the most basic commands a CPU can understand, directing it to perform specific actions like adding numbers or moving data. A program, on the other hand, is a collection of these instructions, organized in a sequence to accomplish a particular task. Think of instructions as individual words and a program as a complete sentence or story; the CPU executes these instructions one by one, following the program's logic, to achieve the desired outcome.
Instructions are the most basic commands a CPU can understand, directing it to perform specific actions like adding numbers or moving data. A program, on the other hand, is a collection of these instructions, organized in a sequence to accomplish a particular task. Think of instructions as individual words and a program as a complete sentence or story; the CPU executes these instructions one by one, following the program's logic, to achieve the desired outcome.
Visit the following resources to learn more:
@@ -1,11 +1,10 @@
# Java
Java is general-purpose language, primarily used for Internet-based applications.
It was created in 1995 by James Gosling at Sun Microsystems and is one of the most popular options for backend developers.
Java is general-purpose language, primarily used for Internet-based applications. It was created in 1995 by James Gosling at Sun Microsystems and is one of the most popular options for backend developers.
Visit the following resources to learn more:
- [@roadmap@Visit Dedicated Java Roadmap](https://roadmap.sh/java)
- [@official@Java](https://www.java.com/)
- [@video@Java Crash Course](https://www.youtube.com/watch?v=eIrMbAQSU34)
- [@feed@Explore top posts about Java](https://app.daily.dev/tags/java?ref=roadmapsh)
- [@feed@Explore top posts about Java](https://app.daily.dev/tags/java?ref=roadmapsh)
@@ -8,4 +8,4 @@ Binary trees are a 2-ary tree, with branching factor = 2
Visit the following resources to learn more:
- [@article@K-Ary Tree](https://en.wikipedia.org/wiki/K-ary_tree)
- [@article@K-Ary Tree](https://en.wikipedia.org/wiki/K-ary_tree)
@@ -5,4 +5,4 @@ K-D Trees are a data structure that allow for fast nearest neighbor search in hi
Visit the following resources to learn more:
- [@video@K-D Tree Algorithm](https://www.youtube.com/watch?v=Y4ZgLlDfKDg)
- [@video@K-d Trees - Computerphile](https://www.youtube.com/watch?v=BK5x7IUTIyU)
- [@video@K-d Trees - Computerphile](https://www.youtube.com/watch?v=BK5x7IUTIyU)
@@ -5,4 +5,4 @@ KnapSack Problem is a classic problem in computer science. It is a problem in wh
Visit the following resources to learn more:
- [@article@How to solve the Knapsack Problem with dynamic programming](https://medium.com/@fabianterh/how-to-solve-the-knapsack-problem-with-dynamic-programming-eb88c706d3cf)
- [@video@3.1 Knapsack Problem - Greedy Method](https://www.youtube.com/watch?v=oTTzNMHM05I)
- [@video@3.1 Knapsack Problem - Greedy Method](https://www.youtube.com/watch?v=oTTzNMHM05I)
@@ -2,12 +2,12 @@
Knuth morris pratt is a string searching algorithm that uses a precomputed array to find the substring in a string. This array is known as the prefix function. The prefix function is the longest prefix that is also a suffix of a substring. The prefix function is used to skip the characters that are already matched. The algorithm is as follows:
- Compute the prefix function of the substring.
- Traverse through the string and substring simultaneously.
- If the characters match, increment the index of both the string and substring.
- If the characters don't match, increment the index of the string by the value of the prefix function at the index of the substring.
* Compute the prefix function of the substring.
* Traverse through the string and substring simultaneously.
* If the characters match, increment the index of both the string and substring.
* If the characters don't match, increment the index of the string by the value of the prefix function at the index of the substring.
Visit the following resources to learn more:
- [@video@9.1 Knuth-Morris-Pratt KMP String Matching Algorithm](https://www.youtube.com/watch?v=V5-7GzOfADQ)
- [@course@Knuth-Morris Pratt](https://www.coursera.org/learn/algorithms-part2/lecture/TAtDr/knuth-morris-pratt)
- [@video@9.1 Knuth-Morris-Pratt KMP String Matching Algorithm](https://www.youtube.com/watch?v=V5-7GzOfADQ)
@@ -5,5 +5,5 @@ Kruskal's algorithm is a greedy algorithm that finds a minimum spanning tree for
Visit the following resources to learn more:
- [@video@Kruskals Algorithm in 2 Minutes](https://www.youtube.com/watch?v=71UQH7Pr9kU)
- [@video@Graph Algorithms II - DFS, BFS, Kruskals Algorithm, Union Find Data Structure - Lecture 7](https://www.youtube.com/watch?v=ufj5_bppBsA\&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm\&index=8)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
- [@video@Graph Algorithms II - DFS, BFS, Kruskals Algorithm, Union Find Data Structure - Lecture 7](https://www.youtube.com/watch?v=ufj5_bppBsA&list=PLFDnELG9dpVxQCxuD-9BSy2E7BWY3t5Sm&index=8)
- [@feed@Explore top posts about Data Science](https://app.daily.dev/tags/data-science?ref=roadmapsh)
@@ -5,4 +5,4 @@ LFU Cache is a data structure that stores key-value pairs. It has a fixed size a
Visit the following resources to learn more:
- [@article@Least Frequently Used (LFU) Cache Implementation](https://www.geeksforgeeks.org/least-frequently-used-lfu-cache-implementation/)
- [@article@1117. Data Structure - LFU Cache](https://jojozhuang.github.io/algorithm/data-structure-lfu-cache/)
- [@article@1117. Data Structure - LFU Cache](https://jojozhuang.github.io/algorithm/data-structure-lfu-cache/)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@Linear Search Algorithm](https://www.geeksforgeeks.org/linear-search/)
- [@video@Big O Notation — Calculating Time Complexity](https://www.youtube.com/watch?v=Z0bH0cMY0E8)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [@video@Big O Notations](https://www.youtube.com/watch?v=V6mKVRU1evU)
@@ -4,12 +4,12 @@ Arrays store elements in contiguous memory locations, resulting in easily calcul
Visit the following resources to learn more:
- [@video@Linked List Data Structure | Illustrated Data Structures](https://www.youtube.com/watch?v=odW9FU8jPRQ)
- [@video@Linked Lists in 4 minutes](https://www.youtube.com/watch?v=F8AbOfQwl1c)
- [@course@Singly Linked Lists](https://www.coursera.org/lecture/data-structures/singly-linked-lists-kHhgK)
- [@video@CS 61B Lecture 7: Linked Lists I](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
- [@video@CS 61B Lecture 7: Linked Lists II](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
- [@course@Core: Linked Lists vs Arrays](https://www.coursera.org/lecture/data-structures-optimizing-performance/core-linked-lists-vs-arrays-rjBs9)
- [@course@In the Real World: Linked Lists vs Arrays](https://www.coursera.org/lecture/data-structures-optimizing-performance/in-the-real-world-lists-vs-arrays-QUaUd)
- [@video@Why you should avoid Linked Lists?](https://www.youtube.com/watch?v=YQs6IC-vgmo)
- [@course@Doubly Linked Lists](https://www.coursera.org/lecture/data-structures/doubly-linked-lists-jpGKD)
- [@video@Linked List Data Structure | Illustrated Data Structures](https://www.youtube.com/watch?v=odW9FU8jPRQ)
- [@video@Linked Lists in 4 minutes](https://www.youtube.com/watch?v=F8AbOfQwl1c)
- [@video@CS 61B Lecture 7: Linked Lists I](https://archive.org/details/ucberkeley_webcast_htzJdKoEmO0)
- [@video@CS 61B Lecture 7: Linked Lists II](https://archive.org/details/ucberkeley_webcast_-c4I3gFYe3w)
- [@video@Why you should avoid Linked Lists?](https://www.youtube.com/watch?v=YQs6IC-vgmo)
@@ -5,4 +5,4 @@ Little Endian is a way of storing data in memory. It is the opposite of Big Endi
Visit the following resources to learn more:
- [@video@Big Endian vs Little Endian](https://www.youtube.com/watch?v=JrNF0KRAlyo)
- [@video@Endianness Explained With an Egg - Computerphile](https://www.youtube.com/watch?v=NcaiHcBvDR4)
- [@video@Endianness Explained With an Egg - Computerphile](https://www.youtube.com/watch?v=NcaiHcBvDR4)
@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@article@What is Load Balancing? | How load balancers work](https://www.cloudflare.com/learning/performance/what-is-load-balancing/)
- [@video@Load Balancers 101](https://www.youtube.com/watch?v=galcDRNd5Ow)
- [@video@What is Load Balancing?](https://www.youtube.com/watch?v=gGLophKzJs8)
- [@video@What is Load Balancing?](https://www.youtube.com/watch?v=gGLophKzJs8)
@@ -9,4 +9,4 @@ A semaphore does the same as a mutex but allows x number of threads to enter, th
Visit the following resources to learn more:
- [@article@What is the difference between lock, mutex and semaphore?](https://stackoverflow.com/questions/2332765/what-is-the-difference-between-lock-mutex-and-semaphore)
- [@article@What is a Semaphore](https://stackoverflow.com/questions/34519/what-is-a-semaphore/40238#40238)
- [@article@What is a Semaphore](https://stackoverflow.com/questions/34519/what-is-a-semaphore/40238#40238)

Some files were not shown because too many files have changed in this diff Show More