{"id":82852,"date":"2021-07-29T09:00:37","date_gmt":"2021-07-29T03:30:37","guid":{"rendered":"https:\/\/techvidvan.com\/tutorials\/?p=82852"},"modified":"2021-07-29T09:00:37","modified_gmt":"2021-07-29T03:30:37","slug":"shell-sort","status":"publish","type":"post","link":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/","title":{"rendered":"Shell Sort in Data Structure"},"content":{"rendered":"<p>Shell sort is a special case of insertion sort. It was designed to overcome the drawbacks of insertion sort. Thus, it is more efficient than insertion sort. In shell sort, we can swap or exchange the far away items in addition to adjacent items.<\/p>\n<h3>What is Shell Sort?<\/h3>\n<p>In insertion sort, we could move the elements ahead only by one position at a time. If we wish to move an element to a faraway position in insertion sort, a lot of movements were involved thus increasing the execution time. Shell sort overcomes this problem of insertion sort by allowing movement and swap of far-away elements as well.<\/p>\n<p>This sorting technique works by sorting elements in pairs, far away from each other and subsequently reduces their gap. The gap is known as the <strong>interval.<\/strong> We can calculate this gap\/interval with the help of Knuth\u2019s formula.<\/p>\n<h3>Knuth\u2019s formula<\/h3>\n<p>Let h be the interval having an initial value = 1<br \/>\nThen, h = h*3 + 1<\/p>\n<h3>Characteristics of Shell Sort<\/h3>\n<ul>\n<li>Comparison-based sorting technique.<\/li>\n<li>Inplace sorting technique just like insertion sort.<\/li>\n<li>Works very well for medium-sized datasets.<\/li>\n<li>Unstable sorting technique.<\/li>\n<\/ul>\n<h3>Working of Shell Sort<\/h3>\n<p>Suppose we wish to sort the following list of elements: 71, 7, 28, 22, 36, 12, 15, 22, 4.<br \/>\nThe first step in shell sort is to decide the gap\/interval. Let us take interval = 4. Thus, we will select pairs of elements present at an interval 4 from each other and swap them if they are out of order.<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-82998\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image01.jpg\" alt=\"Shell Sort working\" width=\"513\" height=\"443\" \/><\/a><\/p>\n<p>On swapping these pairs, the array will be:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image02.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-82999\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image02.jpg\" alt=\"Shell Sort Example\" width=\"469\" height=\"94\" \/><\/a><\/p>\n<p>After performing this step, we will simply apply insertion sort on this array.<\/p>\n<p>Iteration 1:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83000\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image03.jpg\" alt=\"Shell Sort Iterations\" width=\"469\" height=\"128\" \/><\/a><\/p>\n<p>Iteration 2:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image04.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83001\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image04.jpg\" alt=\"Shell Sort Iterations\" width=\"469\" height=\"128\" \/><\/a><\/p>\n<p>Iteration 3:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image05.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83002\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image05.jpg\" alt=\"Shell Sort Working\" width=\"469\" height=\"384\" \/><\/a><\/p>\n<p>Iteration 4:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image06.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83003\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image06.jpg\" alt=\"Shell Sort Iterations\" width=\"469\" height=\"128\" \/><\/a><\/p>\n<p>Iteration 5:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image07.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83004\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image07.jpg\" alt=\"Shell Sort Iterations\" width=\"469\" height=\"256\" \/><\/a><\/p>\n<p>Iteration 6:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image08.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83005\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image08.png\" alt=\"Shell Sort Working\" width=\"469\" height=\"128\" \/><\/a><\/p>\n<p>Iteration 7:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image09.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83007\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image09.jpg\" alt=\"Shell Sort Iteration\" width=\"469\" height=\"128\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Thus, the final sorted array is:<\/p>\n<p><a href=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image10.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-83006\" src=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/sites\/2\/2021\/07\/TV-shell-sort-in-DS-normal-image10.png\" alt=\"Shell Sort Output\" width=\"469\" height=\"92\" \/><\/a><\/p>\n<p>Shell sort reduces the number of inversions by swapping far away elements in the first step. Hence, it is simply a variation of insertion sort.<\/p>\n<h3>Algorithm for Shell Sort<\/h3>\n<p>Step 1: Initialize the gap size i.e. h<br \/>\nStep 2: Divide the array into sub-arrays each having interval of h<br \/>\nStep 3: Sort the sub-arrays with insertion sort<br \/>\nStep 4: Reduce the value of h<br \/>\nStep 5: Repeat the above steps until the array is sorted<\/p>\n<h3>Pseudo-code of Shell Sort<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">procedure Shell_sort(Array, n)  \/\/n = size of array\n    while gap &lt; length(Array) \/3 :\n        gap = interval * 3 + 1\t    \n    END while loop\n   \n    while gap &gt; 0 :\n        for (outer = gap; outer &lt; length(Array); outer++):\n            Insertion_value = Array[outer]\n            inner = outer;\n            while inner &gt; gap-1 &amp;&amp; Array[inner - gap] &gt;= Insertion_value:\n                Array[inner] = Array[inner - gap]\n                inner = inner - gap\n            END while loop\n            Array[inner] = Insertion_value\n        END for loop\n\n        gap = (gap -1) \/3;\t  \n\n    end while loop\nEND Shell_sort\n<\/pre>\n<h3>Shell Sort Implementation in C<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">#include &lt;stdio.h&gt;\nvoid Shell_sort(int Array[], int N)\n{\n    int gap, j, i, Temp;\n    for (gap = N\/2; gap &gt; 0; gap = gap\/2){\n        for (i = gap; i &lt; N; i++) {\n            Temp = Array[i];\n            for (j = i; j &gt;= gap &amp;&amp; Array[j - gap] &gt; Temp; j = j-gap){\n            Array[j] = Array[j - gap];\n        }\n        Array[j] = Temp;\n        }\n    }\n}\nvoid Display_array(int arr[], int n){\n  for(int i=0; i&lt;n; i++){\n     printf(\"%d  \", arr[i]);\n  }\n  printf(\"\\n\");\n}\n\nint main(){\n    int array[]={21, 12, 14, 46, 7, 25, 10, 62, 19, 31, 1};\n    int size =sizeof(array) \/ sizeof(int);\n    Shell_sort(array, size);\n    printf(\"Sorted array is: \\n\");\n    Display_array(array, size);\n    return 0;\n}\n<\/pre>\n<h3>Shell Sort Implementation in C++<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">#include &lt;bits\/stdc++.h&gt;\nvoid Shell_sort(int Array[], int N)\n{\n    int gap, j, i, Temp;\n    for (gap = N\/2; gap &gt; 0; gap = gap\/2){\n        for (i = gap; i &lt; N; i++) {\n            Temp = Array[i];\n            for (j = i; j &gt;= gap &amp;&amp; Array[j - gap] &gt; Temp; j = j-gap){\n            Array[j] = Array[j - gap];\n        }\n        Array[j] = Temp;\n        }\n    }\n}\nvoid Display_array(int arr[], int n){\n    for(int i=0; i&lt;n; i++)\n        cout&lt;&lt; arr[i];\n    cout &lt;&lt; endl;\n}\n\nint main(){\n    int array[]={21, 12, 14, 46, 7, 25, 10, 62, 19, 31, 1};\n    int size =sizeof(array) \/ sizeof(int);\n    Shell_sort(array, size);\n    cout&lt;&lt; \"Sorted array is: \\n\";\n    Display_array(array, size);\n    return 0;\n}\n<\/pre>\n<h3>Implementation of Shell Sort in Java<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">class ShellSort\n{\n\n  static void Display_array(int arr[])\n  {\n    int N = arr.length;\n    for (int i=0; i&lt;N; ++i)\n      System.out.print(arr[i] + \" \");\n    System.out.println();\n  }\n\n  int shell_sort(int Array[])\n  {\n    int N = Array.length;\n    for (int gap = N\/2; gap &gt; 0; gap = gap\/2)\n    {\n      for (int i = gap; i &lt; N; i += 1)\n      {\n        int Temp = Array[i];\n        int j;\n        for (j = i; j &gt;= gap &amp;&amp; arr[j - gap] &gt; Temp; j =j- gap)\n          Array[j] = Array[j - gap];\n        Array[j] = Temp;\n      }\n    }\n    return 0;\n  }\n\n  public static void main(String args[])\n  {\n    int arr[] = {21, 12, 14, 46, 7, 25, 10, 62, 19, 31, 1};\n    System.out.println(\"Before sorting, the array is: \");\n    Display_array(arr);\n\n    ShellSort ob = new ShellSort();\n    ob.shell_sort(arr);\n    System.out.println(\"Array after sorting: \");\n    Display_array(arr);\n  }\n}\n<\/pre>\n<h3>Shell Sort Implementation in Python<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">def Shell_sort(Array):\n  gap = len(Array) \/\/ 2 \n  while gap &gt; 0:\n    i = 0\n    j = gap\n    while j &lt; len(Array):\n      if Array[i] &gt;Array[j]:\n        Array[i],Array[j] = Array[j],Array[i]\n      i++\n      j++\n    while i - gap != -1:\n      if Array[i - gap] &gt; Array[i]:\n        Array[i-gap],Array[i] = Array[i],Array[i-gap]\n      i = i-1\n    gap = gap\/\/2\n\nlist = 21, 12, 14, 46, 7, 25, 10, 62, 19, 31, 1]\nprint(\"Input array:\",list)\nShell_sort(list)\nprint(\"Sorted array is: \",list)<\/pre>\n<h3>Complexity of Shell Sort<\/h3>\n<table style=\"height: 232px\" width=\"479\">\n<tbody>\n<tr>\n<td><strong>Scenario\u00a0<\/strong><\/td>\n<td><strong>Time complexity<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Worst case<\/span><\/td>\n<td><span style=\"font-weight: 400\">O(n<\/span><sup><span style=\"font-weight: 400\">2<\/span><\/sup><span style=\"font-weight: 400\">)<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Average case<\/span><\/td>\n<td><span style=\"font-weight: 400\">\u03b8(n log(n)<\/span><sup><span style=\"font-weight: 400\">2<\/span><\/sup><span style=\"font-weight: 400\">)<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">Best case<\/span><\/td>\n<td><span style=\"font-weight: 400\">\u03a9(n log(n))<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The space complexity of shell sort is O(1).<\/p>\n<h3>Applications of Shell Sort<\/h3>\n<p>1. Shell sort is a replacement of insertion sort when insertion sort is taking too much execution time.<br \/>\n2. We use shell sort when the call of the stack is overhead.<br \/>\n3. Shell sort is applicable when recursion exceeds a particular limit.<\/p>\n<h3>Conclusion<\/h3>\n<p>Shell sort is another sorting technique that is highly efficient for medium to large-sized datasets. It is comparison-based and unstable. It helps to reduce the number of operations of insertion sort.<\/p>\n<p>In this article, we have studied what is shell sort, its working and its implementation in various programming languages. We have also seen some real-life applications of shell sort.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Shell sort is a special case of insertion sort. It was designed to overcome the drawbacks of insertion sort. Thus, it is more efficient than insertion sort. In shell sort, we can swap or&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":82997,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3555],"tags":[3864,3865,3866,3867,3868,3869],"class_list":["post-82852","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-structure","tag-applications-of-shell-sort","tag-shell-sort","tag-shell-sort-algorithm","tag-shell-sort-pseudo-code","tag-shell-sort-working","tag-shell-sorting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Shell Sort in Data Structure - TechVidvan<\/title>\n<meta name=\"description\" content=\"Learn what is shell sort, its working &amp; implementation in various programming languages. See some real-life applications of shell 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:\/\/techvidvan.com\/tutorials\/shell-sort\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Shell Sort in Data Structure - TechVidvan\" \/>\n<meta property=\"og:description\" content=\"Learn what is shell sort, its working &amp; implementation in various programming languages. See some real-life applications of shell sort.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/techvidvan.com\/tutorials\/shell-sort\/\" \/>\n<meta property=\"og:site_name\" content=\"TechVidvan\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/TechVidvan\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-07-29T03:30:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"TechVidvan Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@vidvantech\" \/>\n<meta name=\"twitter:site\" content=\"@vidvantech\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"TechVidvan Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Shell Sort in Data Structure - TechVidvan","description":"Learn what is shell sort, its working & implementation in various programming languages. See some real-life applications of shell 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:\/\/techvidvan.com\/tutorials\/shell-sort\/","og_locale":"en_US","og_type":"article","og_title":"Shell Sort in Data Structure - TechVidvan","og_description":"Learn what is shell sort, its working & implementation in various programming languages. See some real-life applications of shell sort.","og_url":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/","og_site_name":"TechVidvan","article_publisher":"https:\/\/www.facebook.com\/TechVidvan\/","article_published_time":"2021-07-29T03:30:37+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg","type":"image\/jpeg"}],"author":"TechVidvan Team","twitter_card":"summary_large_image","twitter_creator":"@vidvantech","twitter_site":"@vidvantech","twitter_misc":{"Written by":"TechVidvan Team","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#article","isPartOf":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/"},"author":{"name":"TechVidvan Team","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/person\/e9c26e74dd3d87421f7ada9433b8cd22"},"headline":"Shell Sort in Data Structure","datePublished":"2021-07-29T03:30:37+00:00","mainEntityOfPage":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/"},"wordCount":506,"commentCount":0,"publisher":{"@id":"https:\/\/techvidvan.com\/tutorials\/#organization"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#primaryimage"},"thumbnailUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg","keywords":["Applications of Shell Sort","Shell Sort","Shell Sort Algorithm","Shell Sort Pseudo code","Shell Sort working","Shell Sorting"],"articleSection":["Data Structure Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/techvidvan.com\/tutorials\/shell-sort\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/","url":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/","name":"Shell Sort in Data Structure - TechVidvan","isPartOf":{"@id":"https:\/\/techvidvan.com\/tutorials\/#website"},"primaryImageOfPage":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#primaryimage"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#primaryimage"},"thumbnailUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg","datePublished":"2021-07-29T03:30:37+00:00","description":"Learn what is shell sort, its working & implementation in various programming languages. See some real-life applications of shell sort.","breadcrumb":{"@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/techvidvan.com\/tutorials\/shell-sort\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#primaryimage","url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg","contentUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2021\/07\/TV-shell-sort-in-DS.jpg","width":1200,"height":628,"caption":"shell sort in DS"},{"@type":"BreadcrumbList","@id":"https:\/\/techvidvan.com\/tutorials\/shell-sort\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/techvidvan.com\/tutorials\/"},{"@type":"ListItem","position":2,"name":"Shell Sort in Data Structure"}]},{"@type":"WebSite","@id":"https:\/\/techvidvan.com\/tutorials\/#website","url":"https:\/\/techvidvan.com\/tutorials\/","name":"TechVidvan Blogs","description":"","publisher":{"@id":"https:\/\/techvidvan.com\/tutorials\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/techvidvan.com\/tutorials\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/techvidvan.com\/tutorials\/#organization","name":"TechVidvan","url":"https:\/\/techvidvan.com\/tutorials\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/logo\/image\/","url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2024\/03\/techvidvan-logo-200x50-1.webp","contentUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2024\/03\/techvidvan-logo-200x50-1.webp","width":200,"height":50,"caption":"TechVidvan"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/TechVidvan\/","https:\/\/x.com\/vidvantech"]},{"@type":"Person","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/person\/e9c26e74dd3d87421f7ada9433b8cd22","name":"TechVidvan Team","description":"The TechVidvan Team delivers practical, beginner-friendly tutorials on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our experts are here to help you upskill and excel in today\u2019s tech industry."}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts\/82852","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/comments?post=82852"}],"version-history":[{"count":0,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts\/82852\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/media\/82997"}],"wp:attachment":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/media?parent=82852"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/categories?post=82852"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/tags?post=82852"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}