{"id":3876,"date":"2021-08-16T13:29:26","date_gmt":"2021-08-16T13:29:26","guid":{"rendered":"https:\/\/www.prepbytes.com\/blog\/?p=3876"},"modified":"2022-06-09T10:40:47","modified_gmt":"2022-06-09T10:40:47","slug":"delete-the-middle-of-a-linked-list","status":"publish","type":"post","link":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/","title":{"rendered":"Delete the middle of a Linked List"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\" alt=\"\" \/><\/p>\n<h3>Introduction<\/h3>\n<p>The linked list is one of the most important data structures to learn while preparing for interviews. Having a good grasp of Linked Lists can be a huge plus point in a coding interview.<\/p>\n<\/p>\n<h3>Problem Statement<\/h3>\n<p>In this problem, we are given a singly linked list. We have to delete the middle node of the given list.<\/p>\n<h3>Problem Statement Understanding<\/h3>\n<p>Let\u2019s try to understand the problem statement with an example.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes.com\/blog\/wp-content\/uploads\/2021\/08\/input-1-4.png\" alt=\"\" \/><\/p>\n<p>The middle node of this list is 6. We have to remove the middle node from the list. After we remove the middle node, the final linked list will look like this: <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes.com\/blog\/wp-content\/uploads\/2021\/08\/final-linked-list-1-3.png\" alt=\"\" \/><\/p>\n<p>Now,<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes.com\/blog\/wp-content\/uploads\/2021\/08\/input-2-4.png\" alt=\"\" \/><\/p>\n<p>The middle node of this list is 6. We have to remove the middle node from the list. After we remove the middle node, the final linked list will look like this: <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes.com\/blog\/wp-content\/uploads\/2021\/08\/final-linked-list-2-3.png\" alt=\"\" \/>                           <\/p>\n<p>This question is not a very complex one. We can easily think of a Brute force solution, in which we find the length of the linked list, store it in an integer N and then delete the (N\/2)<sup>th<\/sup> node from the list, with the help of a simple deletion process. <\/p>\n<p>Let us have a glance at the above approach.<\/p>\n<h3>Approach and Algorithm (Brute Force)<\/h3>\n<p>The approach is going to be pretty simple. <\/p>\n<ul>\n<li>Firstly, we will count the number of nodes in the given list and store it in a variable N. <\/li>\n<li>Then we will find the position of the middle node, which will be equal to mid = (N\/2).<\/li>\n<li>Now we will traverse the list from head <strong>while(mid&#8211; &gt;1)<\/strong>.<\/li>\n<li>When the above condition of <strong>while(mid&#8211; &gt; 1)<\/strong> violates, we will delete the middle node by performing following operation <strong>currrentNode \u2192 next = currentNode \u2192 next \u2192 next<\/strong>.<\/li>\n<\/ul>\n<p>In this way, the link gets successfully changed, and the middle nodes gets deleted.<\/p>\n<p><strong>Time Complexity<\/strong> &#8211; O(N), as no nested traversal is needed.<br \/>\n<strong>Space Complexity<\/strong> &#8211; O(1), as only temporary variables are being created.<\/p>\n<p>Can we solve this question without actually finding the length of the linked list? <\/p>\n<p>Yes. We can use the slow and fast pointer method to find the middle of the given linked list. This method is the most efficient when it comes to finding the middle of a linked list. The slow and fast method is explained in detail in the next approach.<\/p>\n<h3>Approach (Slow and Fast pointer method)<\/h3>\n<p>The approach is going to use the two pointers method. We are going to create two pointers, say slow and fast. Both the pointers will point to the head initially. Now, the slow pointer will take one step, while the fast pointer will take two steps. When the fast pointer will reach the node, the slow pointer will be pointing to the middle node. In every iteration, we will also store the slow pointer in a temp variable before incrementing it. <\/p>\n<p>So, we now have the node just before the middle node. We will simply change the links now.<\/p>\n<h3>Algorithm<\/h3>\n<ul>\n<li>Base case 1 &#8211; If the head is NULL, return NULL.<\/li>\n<li>Base case 2 &#8211; If the head is the only node in the list, delete the head and return NULL.<\/li>\n<li>Create the slow and fast pointer, both will be initiated at the head.<\/li>\n<li>Make the fast pointer take two steps and the slow pointer 1 step. In every iteration, before incrementing the slow pointer, we will store it in a temp variable.<\/li>\n<li>When the fast pointer reaches the end, the slow pointer will be pointing to the middle node, and the temp will be pointing to the (middle-1)th node.<\/li>\n<li>Now, to change the links &#8211; make the temp point to the next of the slow pointer. <\/li>\n<li>In the end, delete the slow pointer and return NULL.<\/li>\n<\/ul>\n<h3>Dry Run<\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/prepbytes.com\/blog\/wp-content\/uploads\/2021\/08\/Delete-the-middle-of-a-linked-list.png\" alt=\"\" \/><\/p>\n<h3>Code Implementation<\/h3>\n\t\t\t\t\t\t<style>\r\n\t\t\t\t\r\n\t\t\t\t\t#tab_container_3878 {\r\n\toverflow:hidden;\r\n\tdisplay:block;\r\n\twidth:100%;\r\n\tborder:0px solid #ddd;\r\n\tmargin-bottom:30px;\r\n\t}\r\n\r\n#tab_container_3878 .tab-content{\r\n\tpadding:20px;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n\tmargin-top: 0px;\r\n\tbackground-color:#ffffff !important;\r\n\tcolor: #000000 !important;\r\n\tfont-size:16px !important;\r\n\tfont-family: Open Sans !important;\r\n\t\r\n\t\tborder: 1px solid #e6e6e6 !important;\r\n\t}\r\n#tab_container_3878 .wpsm_nav-tabs {\r\n    border-bottom: 0px solid #ddd;\r\n}\r\n#tab_container_3878 .wpsm_nav-tabs > li.active > a, #tab_container_3878 .wpsm_nav-tabs > li.active > a:hover, #tab_container_3878 .wpsm_nav-tabs > li.active > a:focus {\r\n\tcolor: #000000 !important;\r\n\tcursor: default;\r\n\tbackground-color: #ffffff !important;\r\n\tborder: 1px solid #e6e6e6 !important;\r\n}\r\n\r\n#tab_container_3878 .wpsm_nav-tabs > li > a {\r\n    margin-right: 0px !important; \r\n    line-height: 1.42857143 !important;\r\n    border: 1px solid #d5d5d5 !important;\r\n    border-radius: 0px 0px 0 0 !important; \r\n\tbackground-color: #e8e8e8 !important;\r\n\tcolor: #000000 !important;\r\n\tpadding: 15px 18px 15px 18px !important;\r\n\ttext-decoration: none !important;\r\n\tfont-size: 14px !important;\r\n\ttext-align:center !important;\r\n\tfont-family: Open Sans !important;\r\n}\r\n#tab_container_3878 .wpsm_nav-tabs > li > a:focus {\r\noutline: 0px !important;\r\n}\r\n\r\n#tab_container_3878 .wpsm_nav-tabs > li > a:before {\r\n\tdisplay:none !important;\r\n}\r\n#tab_container_3878 .wpsm_nav-tabs > li > a:after {\r\n\tdisplay:none !important ;\r\n}\r\n#tab_container_3878 .wpsm_nav-tabs > li{\r\npadding:0px !important ;\r\nmargin:0px;\r\n}\r\n\r\n#tab_container_3878 .wpsm_nav-tabs > li > a:hover , #tab_container_3878 .wpsm_nav-tabs > li > a:focus {\r\n    color: #000000 !important;\r\n    background-color: #e8e8e8 !important;\r\n\tborder: 1px solid #d5d5d5 !important;\r\n\t\r\n}\r\n#tab_container_3878 .wpsm_nav-tabs > li > a .fa{\r\n\r\nmargin-right:5px !important;\r\n\r\nmargin-left:5px !important;\r\n\r\n\r\n}\r\n\r\n\t\t#tab_container_3878 .wpsm_nav-tabs a{\r\n\t\t\tbackground-image: none;\r\n\t\t\tbackground-position: 0 0;\r\n\t\t\tbackground-repeat: repeat-x;\r\n\t\t}\r\n\t\t\t\r\n\r\n\r\n#tab_container_3878 .wpsm_nav-tabs > li {\r\n    float: left;\r\n    margin-bottom: -1px !important;\r\n\tmargin-right:0px !important; \r\n}\r\n\r\n\r\n#tab_container_3878 .tab-content{\r\noverflow:hidden !important;\r\n}\r\n\r\n\r\n@media (min-width: 769px) {\r\n\r\n\t#tab_container_3878 .wpsm_nav-tabs > li{\r\n\t\tfloat:left !important ;\r\n\t\t\t\tmargin-right:-1px !important;\r\n\t\t\t\t\t}\r\n\t#tab_container_3878 .wpsm_nav-tabs{\r\n\t\tfloat:none !important;\r\n\t\tmargin:0px !important;\r\n\t}\r\n\r\n\t#tab_container_3878 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_3878 .wpsm_nav{\r\n\t\t\t}\r\n\r\n}\r\n\r\n\r\n\r\n@media (max-width: 768px) {\r\n\t#tab_container_3878 .wpsm_nav-tabs > li {\r\n\t\t\t\t\r\n\t}\r\n\t#tab_container_3878 .wpsm_nav{\r\n\t\t\t}\r\n}\r\n\r\n\r\n\t.wpsm_nav-tabs li:before{\r\n\t\tdisplay:none !important;\r\n\t}\r\n\r\n\t@media (max-width: 768px) {\r\n\t\t\t\t\r\n\t\t\t\t.wpsm_nav-tabs{\r\n\t\t\tmargin-left:0px !important;\r\n\t\t\tmargin-right:0px !important; \r\n\t\t\t\r\n\t\t}\r\n\t\t\t\t#tab_container_3878 .wpsm_nav-tabs > li{\r\n\t\t\tfloat:none !important;\r\n\t\t}\r\n\t\t\t\r\n\t}\t\t\t\t<\/style>\r\n\t\t\t\t<div id=\"tab_container_3878\" >\r\n\t \r\n\t\t\t\t\t<ul class=\"wpsm_nav wpsm_nav-tabs\" role=\"tablist\" id=\"myTab_3878\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  class=\"active\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_3878_1\" aria-controls=\"tabs_desc_3878_1\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_3878_2\" aria-controls=\"tabs_desc_3878_2\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>C++<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_3878_3\" aria-controls=\"tabs_desc_3878_3\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Java<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<li role=\"presentation\"  onclick=\"do_resize()\">\r\n\t\t\t\t\t\t\t\t<a href=\"#tabs_desc_3878_4\" aria-controls=\"tabs_desc_3878_4\" role=\"tab\" data-toggle=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<i class=\"fa fa-code\"><\/i> \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t<span>Python<\/span>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t<\/a>\r\n\t\t\t\t\t\t\t<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t <\/ul>\r\n\r\n\t\t\t\t\t  <!-- Tab panes -->\r\n\t\t\t\t\t  <div class=\"tab-content\" id=\"tab-content_3878\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane  in active \" id=\"tabs_desc_3878_1\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"c\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n#include &lt;stdio.h&gt;\r\n#include &lt;stdlib.h&gt;\r\n\r\nstruct Node {\r\n    int data;\r\n    struct Node* next;\r\n};\r\n \r\n\/\/ Deletes middle node and returns\r\n\/\/ head of the modified list\r\nstruct Node* deleteMid(struct Node* head)\r\n{\r\n    \/\/ Base cases\r\n    if (head == NULL)\r\n        return NULL;\r\n    if (head-&gt;next == NULL) {\r\n        free(head);\r\n        return NULL;\r\n    }\r\n \r\n    \/\/ Initialize slow and fast pointers\r\n    \/\/ to reach middle of linked list\r\n    struct Node* slow_ptr = head;\r\n    struct Node* fast_ptr = head;\r\n \r\n    \/\/ Find the middle and previous of middle.\r\n\/\/ To store previous of slow_ptr   \r\nstruct Node* prev;\r\n    while (fast_ptr != NULL\r\n&amp;&amp; fast_ptr-&gt;next != NULL) {\r\n        fast_ptr = fast_ptr-&gt;next-&gt;next;\r\n        prev = slow_ptr;\r\n        slow_ptr = slow_ptr-&gt;next;\r\n    }\r\n \r\n    \/\/ Delete the middle node\r\n    prev-&gt;next = slow_ptr-&gt;next;\r\n    free(slow_ptr);\r\n \r\n    return head;\r\n}\r\n \r\n\/\/ A utility function to print\r\n\/\/ a given linked list\r\nvoid printList(struct Node* ptr)\r\n{\r\n    while (ptr != NULL) {\r\n        printf(&quot;%d-&gt;&quot;,ptr-&gt;data);\r\n        ptr = ptr-&gt;next;\r\n    }\r\n    printf(&quot;NULL&#92;n&quot;);\r\n}\r\n \r\n\/\/ Utility function to create a new node.\r\nstruct Node* newNode(int x)\r\n{\r\n    struct Node* node = malloc(sizeof(struct Node*));\r\n    node-&gt;data = x;\r\n    node-&gt;next = NULL;\r\n    return node;\r\n}\r\n \r\n\/* Driver program to test above function*\/\r\nint main()\r\n{\r\n    \/* Start with the empty list *\/\r\n    struct Node* head = newNode(1);\r\n    head-&gt;next = newNode(2);\r\n    head-&gt;next-&gt;next = newNode(6);\r\n    head-&gt;next-&gt;next-&gt;next = newNode(13);\r\n \r\n    printf(&quot;Given Linked List&#92;n&quot;);\r\n    printList(head);\r\n \r\n    head = deleteMid(head);\r\n \r\n    printf(&quot;Linked List after deletion of middle&#92;n&quot;);\r\n    printList(head);\r\n \r\n    return 0;\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_3878_2\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"cpp\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\n#include &lt;bits stdc++.h=&quot;&quot;&gt;\r\nusing namespace std;\r\n\r\nstruct Node {\r\n    int data;\r\n    struct Node* next;\r\n};\r\n\r\nstruct Node* deleteMid(struct Node* head)\r\n{\r\n    \r\n    if (head == NULL)\r\n        return NULL;\r\n    if (head-&gt;next == NULL) {\r\n        delete head;\r\n        return NULL;\r\n    }\r\n\r\n    struct Node* slow_pointer = head;\r\n    struct Node* fast_pointer = head;\r\n\r\nstruct Node* prev;\r\n    while (fast_pointer != NULL\r\n&amp;&amp; fast_pointer-&gt;next != NULL) {\r\n        fast_pointer = fast_pointer-&gt;next-&gt;next;\r\n        prev = slow_pointer;\r\n        slow_pointer = slow_pointer-&gt;next;\r\n    }\r\n\r\n    prev-&gt;next = slow_pointer-&gt;next;\r\n    delete slow_pointer;\r\n \r\n    return head;\r\n}\r\n\r\nvoid printList(struct Node* ptr)\r\n{\r\n    while (ptr != NULL) {\r\n        cout &lt;&lt; ptr-&gt;data &lt;&lt; &quot;-&gt;&quot;;\r\n        ptr = ptr-&gt;next;\r\n    }\r\n    cout &lt;&lt; &quot;NULL&#92;n&quot;;\r\n}\r\n\r\nNode* newNode(int data)\r\n{\r\n    struct Node* temp = new Node;\r\n    temp-&gt;data = data;\r\n    temp-&gt;next = NULL;\r\n    return temp;\r\n}\r\n\r\nint main()\r\n{\r\n\r\n    struct Node* head = newNode(1);\r\n    head-&gt;next = newNode(2);\r\n    head-&gt;next-&gt;next = newNode(6);\r\n    head-&gt;next-&gt;next-&gt;next = newNode(13);\r\n \r\n    cout &lt;&lt; &quot;Given Linked List&#92;n&quot;;\r\n    printList(head);\r\n \r\n    head = deleteMid(head);\r\n \r\n    cout &lt;&lt; &quot;Linked List after deletion of middle&#92;n&quot;;\r\n    printList(head);\r\n \r\n    return 0;\r\n}\r\n\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_3878_3\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"java\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"java\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\npublic class PrepBytes {\r\n\r\n\r\n    static class Node {\r\n        int data;\r\n        Node next;\r\n    }\r\n\r\n    static Node deleteMid(Node head)\r\n    {\r\n\r\n        if (head == null)\r\n            return null;\r\n        if (head.next == null) {\r\n            return null;\r\n        }\r\n\r\n        Node slow_ptr = head;\r\n        Node fast_ptr = head;\r\n\r\n        Node prev = null;\r\n\r\n        while (fast_ptr != null\r\n&amp;&amp; fast_ptr.next != null) {\r\n            fast_ptr = fast_ptr.next.next;\r\n            prev = slow_ptr;\r\n            slow_ptr = slow_ptr.next;\r\n        }\r\n\r\n        prev.next = slow_ptr.next;\r\n\r\n        return head;\r\n    }\r\n\r\n    static void printList(Node ptr)\r\n    {\r\n        while (ptr != null) {\r\n            System.out.print(ptr.data + &quot;-&gt;&quot;);\r\n            ptr = ptr.next;\r\n        }\r\n        System.out.println(&quot;NULL&quot;);\r\n    }\r\n\r\n    static Node newNode(int data)\r\n    {\r\n        Node temp = new Node();\r\n        temp.data = data;\r\n        temp.next = null;\r\n        return temp;\r\n    }\r\n\r\n\r\n    public static void main(String[] args)\r\n    {\r\n\r\n        Node head = newNode(1);\r\n        head.next = newNode(2);\r\n        head.next.next = newNode(6);\r\n        head.next.next.next = newNode(13);\r\n\r\n        System.out.println(&quot;Given Linked List&quot;);\r\n        printList(head);\r\n\r\n        head = deleteMid(head);\r\n\r\n        System.out.println(&quot;Linked List after deletion of middle&quot;);\r\n        printList(head);\r\n    }\r\n}\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\r\n\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t <div role=\"tabpanel\" class=\"tab-pane \" id=\"tabs_desc_3878_4\">\r\n\t\t\t\t\t\t\t\t<!-- wp:enlighter\/codeblock {\"language\":\"python\"} -->\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\r\nclass Node:\r\n\t\r\n\tdef __init__(self, data):\r\n\t\t\r\n\t\tself.data = data\r\n\t\tself.next = None\r\n\r\nclass LinkedList:\r\n\t\r\n\tdef __init__(self):\r\n\r\n\t\tself.head = None\r\n\r\n\tdef addToList(self, data):\r\n\t\t\r\n\t\tnewNode = Node(data)\r\n\t\tif self.head is None:\r\n\t\t\tself.head = newNode\r\n\t\t\treturn\r\n\t\t\t\r\n\t\tlast = self.head\r\n\t\t\r\n\t\twhile last.next:\r\n\t\t\tlast = last.next\r\n\t\t\t\r\n\t\tlast.next = newNode\r\n\r\n\tdef __str__(self):\r\n\t\t\r\n\t\tlinkedListStr = &quot;&quot;\r\n\t\ttemp = self.head\r\n\t\t\r\n\t\twhile temp:\r\n\t\t\tlinkedListStr += str(temp.data) + &quot;-&gt;&quot;\r\n\t\t\ttemp = temp.next\r\n\t\t\t\r\n\t\treturn linkedListStr + &quot;NULL&quot;\r\n\r\n\tdef deleteMid(self):\r\n\r\n\t\tif (self.head is None or\r\n\t\t\tself.head.next is None):\r\n\t\t\treturn\r\n\r\n\t\tslow_Ptr = self.head\r\n\t\tfast_Ptr = self.head\r\n\r\n\t\tprev = None\r\n\r\n\t\twhile (fast_Ptr is not None and\r\n\t\t\tfast_Ptr.next is not None):\r\n\t\t\tfast_Ptr = fast_Ptr.next.next\r\n\t\t\tprev = slow_Ptr\r\n\t\t\tslow_Ptr = slow_Ptr.next\r\n\r\n\t\tprev.next = slow_Ptr.next\r\n\r\nlinkedList = LinkedList()\r\nlinkedList.addToList(1)\r\nlinkedList.addToList(2)\r\nlinkedList.addToList(6)\r\nlinkedList.addToList(13)\r\n\r\nprint(&quot;Given Linked List&quot;)\r\nprint(linkedList)\r\n\r\nlinkedList.deleteMid()\r\n\r\nprint(&quot;Linked List after deletion of middle&quot;)\r\nprint(linkedList)\r\n\r\n<\/pre>\r\n<!-- \/wp:enlighter\/codeblock -->\t\t\t\t\t\t <\/div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t <\/div>\r\n\t\t\t\t\t \r\n\t\t\t\t <\/div>\r\n <script>\r\n\t\tjQuery(function () {\r\n\t\t\tjQuery('#myTab_3878 a:first').tab('show')\r\n\t\t});\r\n\t\t\r\n\t\t\t\tjQuery(function(){\r\n\t\t\tvar b=\"fadeIn\";\r\n\t\t\tvar c;\r\n\t\t\tvar a;\r\n\t\t\td(jQuery(\"#myTab_3878 a\"),jQuery(\"#tab-content_3878\"));function d(e,f,g){\r\n\t\t\t\te.click(function(i){\r\n\t\t\t\t\ti.preventDefault();\r\n\t\t\t\t\tjQuery(this).tab(\"show\");\r\n\t\t\t\t\tvar h=jQuery(this).data(\"easein\");\r\n\t\t\t\t\tif(c){c.removeClass(a);}\r\n\t\t\t\t\tif(h){f.find(\"div.active\").addClass(\"animated \"+h);a=h;}\r\n\t\t\t\t\telse{if(g){f.find(\"div.active\").addClass(\"animated \"+g);a=g;}else{f.find(\"div.active\").addClass(\"animated \"+b);a=b;}}c=f.find(\"div.active\");\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\r\n\t\tfunction do_resize(){\r\n\r\n\t\t\tvar width=jQuery( '.tab-content .tab-pane iframe' ).width();\r\n\t\t\tvar height=jQuery( '.tab-content .tab-pane iframe' ).height();\r\n\r\n\t\t\tvar toggleSize = true;\r\n\t\t\tjQuery('iframe').animate({\r\n\t\t\t    width: toggleSize ? width : 640,\r\n\t\t\t    height: toggleSize ? height : 360\r\n\t\t\t  }, 250);\r\n\r\n\t\t\t  toggleSize = !toggleSize;\r\n\t\t}\r\n\r\n\r\n\t<\/script>\r\n\t\t\t\t\r\n\t\t\t\n<h4>Output<\/h4>\n<p>Given Linked List<br \/>\n1\u21922\u21926\u219213\u2192NULL<br \/>\nLinked List after deletion of middle<br \/>\n1\u21922\u219213\u2192NULL<\/p>\n<p><strong>Time Complexity:<\/strong> O(n), as list traversal is needed.<br \/>\n[forminator_quiz id=&#8221;3877&#8243;]<\/p>\n<p>So, in this article, we have tried to explain the most efficient approach to delete the middle of a linked list. This is an important problem when it comes to coding interviews. If you want to solve more questions on Linked List, which are curated by our expert mentors at PrepBytes, you can follow this link <a href=\"https:\/\/mycode.prepbytes.com\/interview-coding\/practice\/linked-list\">Linked List<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction The linked list is one of the most important data structures to learn while preparing for interviews. Having a good grasp of Linked Lists can be a huge plus point in a coding interview. Problem Statement In this problem, we are given a singly linked list. We have to delete the middle node of [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[125],"tags":[],"class_list":["post-3876","post","type-post","status-publish","format-standard","hentry","category-linked-list"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Delete the middle of a Linked List in C++ &amp; Java | Linked List | Prepbytes<\/title>\n<meta name=\"description\" content=\"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Delete the middle of a Linked List in C++ &amp; Java | Linked List | Prepbytes\" \/>\n<meta property=\"og:description\" content=\"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\" \/>\n<meta property=\"og:site_name\" content=\"PrepBytes Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prepbytes0211\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-08-16T13:29:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-06-09T10:40:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\" \/>\n<meta name=\"author\" content=\"Prepbytes\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Prepbytes\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\"},\"author\":{\"name\":\"Prepbytes\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\"},\"headline\":\"Delete the middle of a Linked List\",\"datePublished\":\"2021-08-16T13:29:26+00:00\",\"dateModified\":\"2022-06-09T10:40:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\"},\"wordCount\":705,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\",\"articleSection\":[\"Linked list articles\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\",\"url\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\",\"name\":\"Delete the middle of a Linked List in C++ & Java | Linked List | Prepbytes\",\"isPartOf\":{\"@id\":\"http:\/\/43.205.93.38\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\",\"datePublished\":\"2021-08-16T13:29:26+00:00\",\"dateModified\":\"2022-06-09T10:40:47+00:00\",\"description\":\"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.\",\"breadcrumb\":{\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage\",\"url\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\",\"contentUrl\":\"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\/\/43.205.93.38\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Linked list articles\",\"item\":\"https:\/\/prepbytes.com\/blog\/category\/linked-list\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Delete the middle of a Linked List\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/43.205.93.38\/#website\",\"url\":\"http:\/\/43.205.93.38\/\",\"name\":\"PrepBytes Blog\",\"description\":\"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING\",\"publisher\":{\"@id\":\"http:\/\/43.205.93.38\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\/\/43.205.93.38\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\/\/43.205.93.38\/#organization\",\"name\":\"Prepbytes\",\"url\":\"http:\/\/43.205.93.38\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"contentUrl\":\"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp\",\"width\":160,\"height\":160,\"caption\":\"Prepbytes\"},\"image\":{\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/prepbytes0211\/\",\"https:\/\/www.instagram.com\/prepbytes\/\",\"https:\/\/www.linkedin.com\/company\/prepbytes\/\",\"https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA\"]},{\"@type\":\"Person\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e\",\"name\":\"Prepbytes\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\/\/43.205.93.38\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g\",\"caption\":\"Prepbytes\"},\"url\":\"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Delete the middle of a Linked List in C++ & Java | Linked List | Prepbytes","description":"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.","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:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/","og_locale":"en_US","og_type":"article","og_title":"Delete the middle of a Linked List in C++ & Java | Linked List | Prepbytes","og_description":"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.","og_url":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/","og_site_name":"PrepBytes Blog","article_publisher":"https:\/\/www.facebook.com\/prepbytes0211\/","article_published_time":"2021-08-16T13:29:26+00:00","article_modified_time":"2022-06-09T10:40:47+00:00","og_image":[{"url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png","type":"","width":"","height":""}],"author":"Prepbytes","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Prepbytes","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#article","isPartOf":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/"},"author":{"name":"Prepbytes","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e"},"headline":"Delete the middle of a Linked List","datePublished":"2021-08-16T13:29:26+00:00","dateModified":"2022-06-09T10:40:47+00:00","mainEntityOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/"},"wordCount":705,"commentCount":0,"publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png","articleSection":["Linked list articles"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/","url":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/","name":"Delete the middle of a Linked List in C++ & Java | Linked List | Prepbytes","isPartOf":{"@id":"http:\/\/43.205.93.38\/#website"},"primaryImageOfPage":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage"},"image":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage"},"thumbnailUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png","datePublished":"2021-08-16T13:29:26+00:00","dateModified":"2022-06-09T10:40:47+00:00","description":"Learn the most efficient way to delete the middle of a linked list. In this article, we have tried to explain the most efficient approach to delete the middle of a linked list.","breadcrumb":{"@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#primaryimage","url":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png","contentUrl":"https:\/\/prepbytes-misc-images.s3.ap-south-1.amazonaws.com\/assets\/1645186531151-delete%20the%20middle%20of%20a%20linked%20list-04.png"},{"@type":"BreadcrumbList","@id":"https:\/\/prepbytes.com\/blog\/delete-the-middle-of-a-linked-list\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/43.205.93.38\/"},{"@type":"ListItem","position":2,"name":"Linked list articles","item":"https:\/\/prepbytes.com\/blog\/category\/linked-list\/"},{"@type":"ListItem","position":3,"name":"Delete the middle of a Linked List"}]},{"@type":"WebSite","@id":"http:\/\/43.205.93.38\/#website","url":"http:\/\/43.205.93.38\/","name":"PrepBytes Blog","description":"ONE-STOP RESOURCE FOR EVERYTHING RELATED TO CODING","publisher":{"@id":"http:\/\/43.205.93.38\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/43.205.93.38\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/43.205.93.38\/#organization","name":"Prepbytes","url":"http:\/\/43.205.93.38\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/","url":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","contentUrl":"https:\/\/blog.prepbytes.com\/wp-content\/uploads\/2025\/07\/uzxxllgloialmn9mhwfe.webp","width":160,"height":160,"caption":"Prepbytes"},"image":{"@id":"http:\/\/43.205.93.38\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/prepbytes0211\/","https:\/\/www.instagram.com\/prepbytes\/","https:\/\/www.linkedin.com\/company\/prepbytes\/","https:\/\/www.youtube.com\/channel\/UC0xGnHDrjUM1pDEK2Ka5imA"]},{"@type":"Person","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/3f7dc4ae851791d5947a7f99df363d5e","name":"Prepbytes","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/43.205.93.38\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/232042cd1a1ea0e982c96d2a2ec93fb70a8e864e00784491231e7bfe5a9e06b5?s=96&d=mm&r=g","caption":"Prepbytes"},"url":"https:\/\/prepbytes.com\/blog\/author\/gourav-jaincollegedekho-com\/"}]}},"_links":{"self":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/3876","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/comments?post=3876"}],"version-history":[{"count":6,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/3876\/revisions"}],"predecessor-version":[{"id":8049,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/posts\/3876\/revisions\/8049"}],"wp:attachment":[{"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/media?parent=3876"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/categories?post=3876"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prepbytes.com\/blog\/wp-json\/wp\/v2\/tags?post=3876"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}