Solution Review: Length of a Linked List
This review provides a detailed analysis of the solution to find the length of a linked list.
We'll cover the following...
Solution: Using Recursion
Press + to interact
index.js
node.js
linkedList.js
import LinkedList from './linkedList.js'function length(testVariable, head) {// Base caseif (head == null) {return 0;}// Recursive caseelse {return 1 + length(testVariable, head.next);}}// Driver Codevar list = new LinkedList();list.appendNode(4);list.appendNode(3);list.appendNode(11);list.appendNode(7);console.log(length(list, list.head))
Explanation
Have a look at the function length()
in index.js
file.
The base case (line number 5 to 7) for this problem is when a linked list contains no nodes. In this case, we return as the length of that linked list.
For the recursive case (line number 11), we move the head pointer to its next node, head.next
, and call another instance of the same function recursively. When this child function returns, we add to the result.
Our solution is based on the following premise: ...