Problem:
Question 1: Write a function that counts the nodes in a linked list
Question 2: Build a complete List class, using a linked-list implementation. It should include basic operations such as constructor, destructor, copy constructor, assignment, and basic list operations: empty, traverse, insert, and delete. Also include a linear search operation to search the list for a given item, returning a pointer to a node containing the item or null pointer if no data is found.
Question 3: For the List class, add a member function to reverse the linked list.
Question 4: Add a boolean valued function that determines whether the data items are arranged in ascending order
Please provide description of your answers step by step.