Files
Java/DataStructures/Lists/CountSinglyLinkedListRecursion.java
Dennis Nilsson 0550711a3e Update CountSinglyLinkedListRecursion.java (#2170)
Only method comment for public recursive method.
2021-04-09 22:18:51 +08:00

29 lines
701 B
Java

package DataStructures.Lists;
public class CountSinglyLinkedListRecursion extends SinglyLinkedList {
public static void main(String[] args) {
CountSinglyLinkedListRecursion list = new CountSinglyLinkedListRecursion();
for (int i = 1; i <= 5; ++i) {
list.insert(i);
}
assert list.count() == 5;
}
/**
* Calculate the count of the list manually using recursion.
*
* @param head head of the list.
* @return count of the list.
*/
private int countRecursion(Node head) {
return head == null ? 0 : 1 + countRecursion(head.next);
}
/**
*Returns the count of the list.
*/
@Override
public int count() {
return countRecursion(getHead());
}
}