struct node
{
node *right;
node *left;
int data;
};
这是我的结构节点。现在我正在使用 stl 优先级队列来提取最小值,即像这样从优先级队列中提取最小值
std::priority_queue<node*, std::vector<node*>, std::greater<node*> > mypq;
但是我没有得到最小值并且用谷歌搜索,我发现(更大),它用于整数,我得到了另一个答案,我像这样实现
struct compare
{
bool operator()(const node*& l, const node*& r)
{
return l > r;
}
};
而我是这样使用的
std::priority_queue<node*, std::vector<node*>,compare > mypq;
但它显示错误我很沮丧,请任何人帮助我