priority_queue.h

来自「实现八数码算法」· C头文件 代码 · 共 42 行

H
42
字号
#include"MinHeap.h"   
class Priority_Queue{   
public:   
	Priority_Queue();   
	~Priority_Queue();   
	void Push( EightDight* &x);   
	EightDight* Pop();   
	bool IsEmpty();   
	bool IsFull();   
private:   
	MinHeap *m_heap;   
	const int maxSize;   
};   

Priority_Queue::Priority_Queue():maxSize(362880){   
	m_heap = new MinHeap(maxSize);   
}   

Priority_Queue::~Priority_Queue(){   
	delete m_heap;   
}   

void Priority_Queue::Push( EightDight* &x){   
	m_heap->Insert(x);   
}   


EightDight*  Priority_Queue::Pop(){   
	EightDight* temp;   
	m_heap->RemoveMin(temp);   
	return temp;   
}   


bool Priority_Queue::IsEmpty(){   
	return m_heap->IsEmpty();   
}   

bool Priority_Queue::IsFull(){   
	return m_heap->IsFull();   
}   

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?