Here are the class definitions of Node and List that implement a linked list. cl
ID: 3785018 • Letter: H
Question
Here are the class definitions of Node and List that implement a linked list. class Node {private Node next; private int key; Node (Node nxt, int keyValue);//constructor Node getNext(); int getKey(); void put(Next Node nxt);} class List {//assume the class does not use a dummy Node private Node head; List ();//constructor boolean exists(int ky);//returns true if v is in the list void insertAtHead(int ky);//inserts at the beginning of the list void insertAtTail(int ky);//inserts at the end of the list int removeFromHead ();//Returns -1 if the list is empty void delete(int ky)//delete the element or do nothing if v doesn't exist int removesmallest ();//removes the Node containing the smallest key//and returns that key. Returns -1 if the list is empty.//could be duplicate entries, so remove the first//int remove Largest ();//removes the Node containing the largest key//and returns that key. Returns -1 if the list is empty.//Could be duplicate entries, so remove the first int maxElement ();//calls the private version, doesn't delete the Node int sum ();//calls the private version int length ();//calls the private version private int maxElement (Node x); private int sum (Node x); private int length Node x);} Write the private recursive function int length(Node x) to find the number of keys in a List.Explanation / Answer
//Recursive Function
int length(Node x)
{
if(x==NULL) return 0;
else
{
return 1+length(x.getNext());
}
}
// Non Recursive Function
int length(Node x)
{
/// Assuming x is root node else change x to root node to get length of list
Node t=x;
int l=0;
if(t==NULL)
return 0;
else
{
while(t!=NULL)
{
l++;
t=t.getNext();
}
}
return l;
}
Related Questions
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.