Reverse Linked List
Try to solve the Reverse Linked List problem.
Statement
Given the head of a singly linked list, reverse the linked list and return its updated head.
Constraints:
Let n
be the number of nodes in a linked list.
-
n
-
Node.Value
Examples
Understand the problem
Let’s take a moment to make sure you’ve correctly understood the problem. The quiz below helps you check if you’re solving the correct problem:
Technical Quiz
1.
What is the output if the following linked list is provided as input?
4 → 2 → 7 → 8 → 9 → 0 → 2
A.
9 → 0 → 2 → 8 → 4 → 2 → 7
B.
7 → 2 → 4 → 8 → 2 → 0 → 9
C.
2 → 0 → 9 → 8 → 7 → 2 → 4
D.
0 → 2 → 2 → 4 → 8 → 9
1 / 4
Figure it out!
We have a game for you to play. Rearrange the logical building blocks to develop a clearer understanding of how to solve this problem.
Try it yourself
Implement your solution in the following coding playground.
Go
usercode > Solution.go
// Definition for a Linked List node// type ListNode struct {// Val int// Next *ListNode// }package mainimport (. "golang-test-code/ds_v1/LinkedList")func reverse(head *ListNode) *ListNode {// Replace this placeholder return statement with your codereturn new(ListNode)}
Click "Run" to evaluate your code.
Reverse Linked List