⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frequencyheap.cpp

📁 我们一个小组
💻 CPP
字号:
#include "FrequencyHeap.h"

const double FREQUENCY_INCREASEMENT = 0.5 ;

//get total number of elements in the heap
size_t FrequencyHeap::GetCount()
{
	return m_vecFrequencyId.size() ;
}

//insert an element
void FrequencyHeap::Insert(double frequency, int id)
{
	m_vecFrequencyId.push_back( ID(id, frequency) ) ;
	sort(m_vecFrequencyId.begin(), m_vecFrequencyId.end()) ;
}

void FrequencyHeap::GetWord(vector<int>& vecIdTable)
{
	for( vector<ID>::iterator it = m_vecFrequencyId.begin(); it!=m_vecFrequencyId.end(); it++)
	{
		vecIdTable.push_back(it->getid()) ;
	}
}

bool FrequencyHeap::IncreaseFrequency(int id)
{
	for( vector<ID>::iterator it = m_vecFrequencyId.begin(); it!=m_vecFrequencyId.end(); it++)
	{
		if (it->getid() == id)
		{
			it->frequency += FREQUENCY_INCREASEMENT;
			sort(m_vecFrequencyId.begin(), m_vecFrequencyId.end()) ;
			return true ;
		}
	}
	return false ;
}

⌨️ 快捷键说明

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