{"id":470,"date":"2023-05-17T11:20:58","date_gmt":"2023-05-17T11:20:58","guid":{"rendered":"https:\/\/vmlogger.com\/algorithms\/?p=470"},"modified":"2023-05-17T11:20:58","modified_gmt":"2023-05-17T11:20:58","slug":"quick-sort-understanding-and-implementing-in-python","status":"publish","type":"post","link":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/","title":{"rendered":"Quick Sort: Understanding and Implementing in Python"},"content":{"rendered":"

Among the various sorting algorithms available, Quick Sort stands out as one of the efficient and widely used sorting algorithms. Although, it can offer a worst case time complexity as O(n^2)<\/code> but it offers a best and an average-case time complexity of O(n log n)<\/code> and performs exceptionally well in practice.
\nOverall, it is slightly faster than merge sort<\/a> and heapsort<\/a> for randomized data, particularly on larger distributions.[3]<\/p>\n

In this article, we will dive into the details of the Quick Sort algorithm, understand its workings, and implement it in Python.<\/p>\n

Introduction to Quick Sort<\/h2>\n

Similar to merge sort<\/a>, quick sort is also based on divide-and-conquer<\/a> algorithm principle. It was developed by British computer scientist Tony Hoare<\/a> in 1959. The algorithm’s core idea is to partition the input array into two sub-arrays, where one sub-array contains elements smaller than a chosen pivot, and the other sub-array contains elements greater than the pivot. <\/p>\n

This process is repeated recursively on the sub-arrays until the entire array is sorted. This is the reason, quick sort is also known as partition-exchange sorting algorithm. <\/p>\n

The key steps involved in the Quick Sort algorithm are as follows:<\/h4>\n
    \n
  1. \nPartitioning:<\/code> Choose a pivot element from the array. Rearrange the array in such a way that all elements smaller than the pivot are placed before it, and all elements greater than the pivot are placed after it. The pivot element is now in its correct sorted position.\n<\/li>\n
  2. \nRecursion:<\/code> Apply the partitioning step recursively to the sub-arrays formed on the left and right sides of the pivot until the entire array is sorted. This process is known as the divide-and-conquer approach.\n<\/li>\n
  3. \nCombining:<\/code> Since the recursion splits the array into smaller sub-arrays, no explicit combining step is necessary. The elements are automatically combined as the recursion unwinds.\n<\/li>\n<\/ol>\n
    \nQuick Sort relies on the fact that once the partitioning step is performed, the pivot element is in its final sorted position and will not move. This property allows the algorithm to sort the remaining sub-arrays independently.\n<\/div>\n

    Understanding the Partitioning Process<\/h2>\n

    The partitioning process plays a crucial role in Quick Sort. It determines the pivot element’s correct sorted position and rearranges the array accordingly. Several approaches exist for selecting the pivot, but the most commonly used one is the \"Lomuto partition scheme.\"<\/code><\/p>\n

    The Lomuto partition scheme<\/code> involves the following steps:<\/h4>\n
      \n
    1. Choose the rightmost element of the array as the pivot.<\/li>\n
    2. Initialise a variable i<\/code> to keep track of the index where elements smaller than the pivot will be placed. Initially, set i to the first element’s index, which is 0<\/code>.<\/li>\n
    3. Iterate through the array from the leftmost element to the second-to-last element.<\/li>\n
    4. For each element encountered, compare it with the pivot element. If it is smaller, swap it with the element at index i<\/code> and increment i<\/code> by 1. This ensures that all smaller elements are placed before the pivot.<\/li>\n
    5. After the iteration completes, swap the pivot element with the element at index i<\/code>. Now, the pivot element is in its final sorted position.<\/li>\n
    6. At this point, all elements to the left of the pivot (indices less than i<\/code>) are smaller than the pivot, and all elements to the right of the pivot (indices greater than i<\/code>) are larger than the pivot. This partitioning step ensures that the pivot element is in its correct sorted position while dividing the array into two sub-arrays for further recursion.<\/li>\n<\/ol>\n
      \"Quick

      Quick Sort Animation – (Source – Wikipedia)<\/p><\/div>\n

      Implementing Quick Sort in Python – Lomuto partition scheme<\/h2>\n

      Now that we have a good understanding of the Quick Sort algorithm let’s proceed to implement it in Python. Here’s the Python code for Quick Sort using the Lomuto partition scheme:<\/p>\n

      \r\ndef quick_sort(arr):\r\n    if len(arr) <= 1:\r\n        return arr\r\n\r\n    pivot = arr[-1]\r\n    smaller, equal, larger = [], [], []\r\n\r\n    for num in arr:\r\n        if num < pivot:\r\n            smaller.append(num)\r\n        elif num == pivot:\r\n            equal.append(num)\r\n        else:\r\n            larger.append(num)\r\n\r\n    return quick_sort(smaller) + equal + quick_sort(larger)\r\n\r\n<\/pre>\n

      Explanation about above code:<\/h2>\n

      The quick_sort function takes an array arr as input and recursively performs the Quick Sort algorithm. The base case is when the array has one or fewer elements, in which case it is already sorted.<\/p>\n

      The pivot is chosen as the last element of the array (arr[-1]).<\/code>
      \nThree additional lists, smaller, equal, and larger,<\/code> are initialized to store elements smaller than the pivot, elements equal to the pivot, and elements larger than the pivot, respectively.<\/p>\n

      The for loop iterates through the array, comparing each element with the pivot and appending it to the corresponding list. Finally, the function recursively calls itself on the smaller and larger lists, and combines the sorted results along with the equal list. Refer the last statement which is the return<\/code> statement.<\/p>\n

      Conclusion<\/h2>\n

      Quick Sort is a highly efficient sorting algorithm with an average-case time complexity of O(n log n). By cleverly choosing a pivot element and applying the divide-and-conquer approach, Quick Sort achieves fast sorting performance in practice. In this article, we explored the inner workings of the Quick Sort algorithm and implemented it in Python using the Lomuto partition scheme. Feel free to experiment with different pivot selection strategies and partitioning schemes to further enhance your understanding of this powerful sorting algorithm.<\/p>\n

      \nRemember, understanding different sorting algorithms, like Quick Sort, is essential for every Python developer's toolkit. It not only helps in solving sorting problems efficiently but also lays a strong foundation for understanding more complex algorithms and data structures.<\/div>\n<\/span>","protected":false},"excerpt":{"rendered":"

      Among the various sorting algorithms available, Quick Sort stands out as one of the efficient and widely used sorting algorithms. Although, it can offer a worst case time complexity as O(n^2) but it offers a best and an average-case time complexity of O(n log n) and performs exceptionally well in practice. Overall, it is slightly […]<\/p>\n","protected":false},"author":45,"featured_media":487,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[9,10],"tags":[],"class_list":["post-470","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-medium","category-sorting"],"yoast_head":"\nQuick Sort: Understanding and Implementing in Python - Algorithms<\/title>\n<meta name=\"description\" content=\"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quick Sort: Understanding and Implementing in Python\" \/>\n<meta property=\"og:description\" content=\"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Algorithms\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/vmlogger\" \/>\n<meta property=\"article:author\" content=\"http:\/\/www.facebook.com\/vmlogger\" \/>\n<meta property=\"article:published_time\" content=\"2023-05-17T11:20:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1440\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Vishwamitra Mishra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/www.twitter.com\/learnexcelmacro\" \/>\n<meta name=\"twitter:site\" content=\"@learnexcelmacro\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vishwamitra Mishra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\"},\"author\":{\"name\":\"Vishwamitra Mishra\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5\"},\"headline\":\"Quick Sort: Understanding and Implementing in Python\",\"datePublished\":\"2023-05-17T11:20:58+00:00\",\"dateModified\":\"2023-05-17T11:20:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\"},\"wordCount\":852,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5\"},\"image\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png\",\"articleSection\":[\"Medium\",\"Sorting\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\",\"url\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\",\"name\":\"Quick Sort: Understanding and Implementing in Python - Algorithms\",\"isPartOf\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png\",\"datePublished\":\"2023-05-17T11:20:58+00:00\",\"dateModified\":\"2023-05-17T11:20:58+00:00\",\"description\":\"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?\",\"breadcrumb\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage\",\"url\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png\",\"contentUrl\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png\",\"width\":2560,\"height\":1440,\"caption\":\"Quick Sort in Python\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vmlogger.com\/algorithms\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quick Sort: Understanding and Implementing in Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#website\",\"url\":\"https:\/\/vmlogger.com\/algorithms\/\",\"name\":\"Algorithms\",\"description\":\"Welcome to the World of Algorithms\",\"publisher\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/vmlogger.com\/algorithms\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5\",\"name\":\"Vishwamitra Mishra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/03\/welcome-1.png\",\"contentUrl\":\"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/03\/welcome-1.png\",\"width\":1963,\"height\":843,\"caption\":\"Vishwamitra Mishra\"},\"logo\":{\"@id\":\"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/image\/\"},\"description\":\"My name is Vishwamitra Mishra. Friends Call me Vishwa. I hold a Bachelor\u2019s Degree in Computer Science from D.A.V.V. Indore & currently working as a Technical Lead having over 7 years of experience.\",\"sameAs\":[\"http:\/\/www.learnexcelmacro.com\",\"http:\/\/www.facebook.com\/vmlogger\",\"https:\/\/x.com\/https:\/\/www.twitter.com\/learnexcelmacro\",\"https:\/\/www.youtube.com\/c\/VMLogger\"],\"url\":\"https:\/\/vmlogger.com\/algorithms\/author\/vishwamitra\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Quick Sort: Understanding and Implementing in Python - Algorithms","description":"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/","og_locale":"en_US","og_type":"article","og_title":"Quick Sort: Understanding and Implementing in Python","og_description":"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?","og_url":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/","og_site_name":"Algorithms","article_publisher":"http:\/\/www.facebook.com\/vmlogger","article_author":"http:\/\/www.facebook.com\/vmlogger","article_published_time":"2023-05-17T11:20:58+00:00","og_image":[{"width":2560,"height":1440,"url":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png","type":"image\/png"}],"author":"Vishwamitra Mishra","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/www.twitter.com\/learnexcelmacro","twitter_site":"@learnexcelmacro","twitter_misc":{"Written by":"Vishwamitra Mishra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#article","isPartOf":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/"},"author":{"name":"Vishwamitra Mishra","@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5"},"headline":"Quick Sort: Understanding and Implementing in Python","datePublished":"2023-05-17T11:20:58+00:00","dateModified":"2023-05-17T11:20:58+00:00","mainEntityOfPage":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/"},"wordCount":852,"commentCount":0,"publisher":{"@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5"},"image":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage"},"thumbnailUrl":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png","articleSection":["Medium","Sorting"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/","url":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/","name":"Quick Sort: Understanding and Implementing in Python - Algorithms","isPartOf":{"@id":"https:\/\/vmlogger.com\/algorithms\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage"},"image":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage"},"thumbnailUrl":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png","datePublished":"2023-05-17T11:20:58+00:00","dateModified":"2023-05-17T11:20:58+00:00","description":"How to implement quick sort in Python? Quick sort algorithm. How does quick sort works? What is quick sort? What is the time complexity of Quick sort?","breadcrumb":{"@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#primaryimage","url":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png","contentUrl":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/05\/quick-sort.png","width":2560,"height":1440,"caption":"Quick Sort in Python"},{"@type":"BreadcrumbList","@id":"https:\/\/vmlogger.com\/algorithms\/2023\/05\/17\/quick-sort-understanding-and-implementing-in-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vmlogger.com\/algorithms\/"},{"@type":"ListItem","position":2,"name":"Quick Sort: Understanding and Implementing in Python"}]},{"@type":"WebSite","@id":"https:\/\/vmlogger.com\/algorithms\/#website","url":"https:\/\/vmlogger.com\/algorithms\/","name":"Algorithms","description":"Welcome to the World of Algorithms","publisher":{"@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vmlogger.com\/algorithms\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/7500a107b0b2d35a8492acf0d11fc8e5","name":"Vishwamitra Mishra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/image\/","url":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/03\/welcome-1.png","contentUrl":"https:\/\/vmlogger.com\/algorithms\/wp-content\/uploads\/sites\/15\/2023\/03\/welcome-1.png","width":1963,"height":843,"caption":"Vishwamitra Mishra"},"logo":{"@id":"https:\/\/vmlogger.com\/algorithms\/#\/schema\/person\/image\/"},"description":"My name is Vishwamitra Mishra. Friends Call me Vishwa. I hold a Bachelor\u2019s Degree in Computer Science from D.A.V.V. Indore & currently working as a Technical Lead having over 7 years of experience.","sameAs":["http:\/\/www.learnexcelmacro.com","http:\/\/www.facebook.com\/vmlogger","https:\/\/x.com\/https:\/\/www.twitter.com\/learnexcelmacro","https:\/\/www.youtube.com\/c\/VMLogger"],"url":"https:\/\/vmlogger.com\/algorithms\/author\/vishwamitra\/"}]}},"_links":{"self":[{"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/posts\/470"}],"collection":[{"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/users\/45"}],"replies":[{"embeddable":true,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/comments?post=470"}],"version-history":[{"count":16,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/posts\/470\/revisions"}],"predecessor-version":[{"id":488,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/posts\/470\/revisions\/488"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/media\/487"}],"wp:attachment":[{"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/media?parent=470"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/categories?post=470"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vmlogger.com\/algorithms\/wp-json\/wp\/v2\/tags?post=470"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}