Why do we require three parameters in order to create a priority queue with user-defined comparison?
priority_queue<Node*, vector<Node*>, comp> pq;
Why can't we create our own comparison operator by writing something like priority_queue<Node*, comp> pq;(removed vectornode*>)?
What is the function of vector<node*>?
Also, how are the elements selected for comparison and then pushed into the queue?