Discuss the below:
Q: Assume that a doubly linked list "header" stores the elements of a priority queue. Implement the function pop(), which deletes the element with the largest value from the list (priority queue).
template < typename T >
void pop(dnode< T > *header);