From de6aaa262b8aabdb56a56d1148d7ec4f72cbd35e Mon Sep 17 00:00:00 2001 From: Nikhil Date: Tue, 2 Jul 2024 17:45:24 +0530 Subject: [PATCH] DSA Roadmap | Updated Links for 102 & 105 (#6007) Update 103-quick-sort.md --- .../102-data-structures/100-what-are-datastructures.md | 8 +++++++- .../content/105-sorting-algorithms/103-quick-sort.md | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/data/roadmaps/datastructures-and-algorithms/content/102-data-structures/100-what-are-datastructures.md b/src/data/roadmaps/datastructures-and-algorithms/content/102-data-structures/100-what-are-datastructures.md index bdfd0c85f..ff7353fe7 100644 --- a/src/data/roadmaps/datastructures-and-algorithms/content/102-data-structures/100-what-are-datastructures.md +++ b/src/data/roadmaps/datastructures-and-algorithms/content/102-data-structures/100-what-are-datastructures.md @@ -1,3 +1,9 @@ # What are Data Structures? -Data structures are specialized formats for organizing and storing data in a computer so that it can be used efficiently. They provide a means to manage large amounts of data efficiently for uses such as large databases and internet indexing services. They are critical to programming and are used in almost all software systems including web development, operating systems, image editing, and much more. Some common types of data structures are arrays, linked lists, queues, stacks, trees, and graphs. The choice of the data structure often begins from the choice of an abstract data type, a broad type encapsulating various possible data structures." \ No newline at end of file +Data structures are specialized formats for organizing and storing data in a computer so that it can be used efficiently. They provide a means to manage large amounts of data efficiently for uses such as large databases and internet indexing services. They are critical to programming and are used in almost all software systems including web development, operating systems, image editing, and much more. Some common types of data structures are arrays, linked lists, queues, stacks, trees, and graphs. The choice of the data structure often begins from the choice of an abstract data type, a broad type encapsulating various possible data structures." + +Learn more from the following resources: + +[@video@What an Algorithms and More(MIT)](https://youtu.be/Zc54gFhdpLA?si=F_1QRigN_h2t2nSp&t=133) +[@video@What Are Data Structures?](https://www.youtube.com/watch?v=bum_19loj9A) +[@video@Introduction to Algorithms](https://www.youtube.com/watch?v=0IAPZzGSbME) diff --git a/src/data/roadmaps/datastructures-and-algorithms/content/105-sorting-algorithms/103-quick-sort.md b/src/data/roadmaps/datastructures-and-algorithms/content/105-sorting-algorithms/103-quick-sort.md index 39deb826f..1b9f6c995 100644 --- a/src/data/roadmaps/datastructures-and-algorithms/content/105-sorting-algorithms/103-quick-sort.md +++ b/src/data/roadmaps/datastructures-and-algorithms/content/105-sorting-algorithms/103-quick-sort.md @@ -1,3 +1,9 @@ # Quick Sort -Quicksort, also known as partition-exchange sort, is an efficient, in-place sorting algorithm, which uses divide and conquer principles. It was developed by Tony Hoare in 1959. It operates by selecting a 'pivot' element from the array and partitioning the other elements into two sub-arrays, according to whether they are less than or greater than the pivot. The sub-arrays are then recursively sorted. This process continues until the base case is achieved, which is when the array or sub-array has zero or one element, hence is already sorted. Quicksort can have worst-case performance of O(n^2) if the pivot is the smallest or the largest element in the array, although this scenario is rare if the pivot is chosen randomly. The average case time complexity is O(n log n). \ No newline at end of file +Quicksort, also known as partition-exchange sort, is an efficient, in-place sorting algorithm, which uses divide and conquer principles. It was developed by Tony Hoare in 1959. It operates by selecting a 'pivot' element from the array and partitioning the other elements into two sub-arrays, according to whether they are less than or greater than the pivot. The sub-arrays are then recursively sorted. This process continues until the base case is achieved, which is when the array or sub-array has zero or one element, hence is already sorted. Quicksort can have worst-case performance of O(n^2) if the pivot is the smallest or the largest element in the array, although this scenario is rare if the pivot is chosen randomly. The average case time complexity is O(n log n). + +Learn more from the following resources: + +[@video@A Complete Overview of Quicksort](https://www.youtube.com/watch?v=0SkOjNaO1XY) +[@video@QuickSort](https://www.youtube.com/watch?v=7h1s2SojIRw) +[@video@QuickSort Analysis](https://www.youtube.com/watch?v=-qOVVRIZzao)