# Middle of the Linked List – Leetcode Solution

In this post, we are going to solve the 876. Middle of the Linked List problem of Leetcode. This problem 876. Middle of the Linked List is a Leetcode easy level problem. Let’s see the code, 876. Middle of the Linked List – Leetcode Solution.

## Problem

Given the `head` of a singly linked list, return the middle node of the linked list.

If there are two middle nodes, return the second middle node.

### Example 1 :

``````Input: head = [1,2,3,4,5]
Output: [3,4,5]
Explanation: The middle node of the list is node 3.``````

### Example 2 :

``````Input: head = [1,2,3,4,5,6]
Output: [4,5,6]
Explanation: Since the list has two middle nodes with values 3 and 4, we return the second one.``````

### Constraints

• The number of nodes in the list is in the range `[1, 100]`.
• `1 <= Node.val <= 100`

Now, let’s see the code of 876. Middle of the Linked List – Leetcode Solution.

# Middle of the Linked List – Leetcode Solution

### 876. Middle of the Linked List – Solution in Java

```/**
* public class ListNode {
*     int val;
*     ListNode next;
*     ListNode() {}
*     ListNode(int val) { this.val = val; }
*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {

while(fast != null && fast.next != null){
slow = slow.next;
fast = fast.next.next;
}
return slow;
}
}```

### 876. Middle of the Linked List – Solution in C++

```/**
* struct ListNode {
*     int val;
*     ListNode *next;
*     ListNode() : val(0), next(nullptr) {}
*     ListNode(int x) : val(x), next(nullptr) {}
*     ListNode(int x, ListNode *next) : val(x), next(next) {}
* };
*/
class Solution {
public:

else{
while(fst!=NULL and fst->next!=NULL)
{
fst=fst->next->next;
slw=slw->next;
}

return slw;
}
}
};```

### 876. Middle of the Linked List – Solution in Python

```def middleNode(self, head):