亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? pe.cpp

?? 快速的基于LZW算法的匹配源碼
?? CPP
字號(hào):
// PE.cpp: implementation of the LZW class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "pe.h"

CPatternAlaysis::CPatternAlaysis()
{
	m_pDes = NULL;
	m_alpDic.NoRepeat = true;
}

CPatternAlaysis::~CPatternAlaysis()
{
	if(m_pDes)
		delete m_pDes;
}

int AddWordToPattern(BYTE* lps)
{
	int nLength = 0;
	while(lps[nLength] == ' ')
		nLength++;
	while(lps[nLength] && lps[nLength] != ' ')
		nLength++;
	return max(2, nLength);
}

int GetPatternLength(BYTE* lps, int& nPrevLength, int nMinPatternWords = 2)
{
	int nLength = 0, nCount = 0;
	while(nMinPatternWords--)
	{
		while(lps[nLength] == ' ')
			nLength++;
		if(nCount++ == 1)
			nPrevLength = nLength;
		while(lps[nLength] && lps[nLength] != ' ')
			nLength++;
	}

	return max(2, nLength);
}
//////////////////////////////////////////////////////////////////////
void CPatternAlaysis::ConstructPatterns(BYTE *pSrc, int nSrcLen, LPCSTR lpcsDelimiters /*= NULL*/, int nMinPatternWords /*= 2*/, bool bFixedNGram /*= false*/)
{
	// discard initial spaces
	while(*pSrc == ' ')
		pSrc++, nSrcLen--;
	
	if(m_pDes)
		delete m_pDes;
	m_pDes = new BYTE[nSrcLen+1];
	int nIndex[2] = { 0, 0 }, nDesLen = 0;
	if(lpcsDelimiters == NULL)
		// copy source buffer
		memcpy(m_pDes, pSrc, nIndex[1] = nSrcLen);
	else	// discard delimiters
		while (nIndex[0] < nSrcLen)
		{
			if(strchr(lpcsDelimiters, pSrc[nIndex[0]]) == NULL)
				m_pDes[nIndex[1]++] = pSrc[nIndex[0]];
			nIndex[0]++;
		}
	
	// discard repeated spaces
	nIndex[0] = 0;
	while (nIndex[0] < nIndex[1])
	{
		// discard sequenced spaces
		while(m_pDes[nIndex[0]] == ' ' && m_pDes[nIndex[0]+1] == ' ')
			nIndex[0]++;
		m_pDes[nDesLen++] = m_pDes[nIndex[0]++];
	}
	m_pDes[nDesLen] = 0;

	m_alpDic.RemoveAll();

	// tree node to keep last success search to start with
	CBinaryTreeNode<CPattern, int>* pNode = m_alpDic.Root;
	// left m_alpDic Samples points to the source buffer
	int nPrevLength;
	CPattern node(m_pDes, GetPatternLength(m_pDes, nPrevLength, nMinPatternWords));
	// scan the input buffer
	while(node.m_pBuffer < m_pDes+nDesLen)
	{
		pNode = m_alpDic.Insert(&node, -1, pNode);
		pNode->Key.m_nFrequency = pNode->Count;
		if(bFixedNGram == false && pNode->Count > 1)
			// (repeated pattern), increment node length by a new word length
			node.m_nLength += AddWordToPattern(node.m_pBuffer+node.m_nLength);
		else
		{	// initialize node to next entity
			node.m_pBuffer += nPrevLength;
			node.m_nLength = GetPatternLength(node.m_pBuffer, nPrevLength, nMinPatternWords);
			// initialize binary tree search root
			pNode = m_alpDic.Root;
		}
	}
}

int CPatternAlaysis::GetPatternCount()
{
	return m_alpDic.Count;
}

void CPatternAlaysis::GetPatterns(IN int nSortType, IN bool bIgnoreUniquePatterns, OUT vector<CPattern*>& vPatterns)
{
	vPatterns.clear();
	if(nSortType == 0)
	{	// alphabetical
		CBinaryTreeNode<CPattern, int>* pAlpNode = m_alpDic.Min(m_alpDic.Root);
		while(pAlpNode)
		{
			if(pAlpNode->Count > 1 || !bIgnoreUniquePatterns)	// ignore unique pattern
				vPatterns.push_back(&pAlpNode->Key);
			pAlpNode = m_alpDic.Successor(pAlpNode);
		}
	}
	else	if(nSortType == 1 || nSortType == 2)
	{	// frequency - pattern length
		CBinaryTree<CValue<int>, int, vector<CPattern*>, vector<CPattern*>* > displayDic;
		CBinaryTreeNode<CPattern, int>* pAlpNode = m_alpDic.Min(m_alpDic.Root);
		while(pAlpNode != NULL)
		{
			if(pAlpNode->Count > 1 || !bIgnoreUniquePatterns)	// ignore unique pattern
				displayDic.Insert(nSortType == 1 ? pAlpNode->Count/*frequency*/ : pAlpNode->Key.m_nLength/*length*/)->Data.push_back(&pAlpNode->Key);
			pAlpNode = m_alpDic.Successor(pAlpNode);
		}

		CBinaryTreeNode<CValue<int>, vector<CPattern*> >* pNode = displayDic.Max(displayDic.Root);
		while(pNode)
		{
			for(vector<CPattern*>::iterator i = pNode->Data.begin(), end = pNode->Data.end(); i != end; i++)
				vPatterns.push_back(*i);
			pNode = displayDic.Predecessor(pNode);
		}
	}
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品免费在线观看| 国产成人精品aa毛片| ●精品国产综合乱码久久久久| 精品成人一区二区三区| 日韩免费性生活视频播放| 欧美一区二区网站| 欧美成人综合网站| 久久精品人人爽人人爽| 国产偷国产偷精品高清尤物| 日本一区二区三区久久久久久久久不 | 免费的成人av| 欧美aaaaaa午夜精品| 精品写真视频在线观看| 国产高清精品在线| 91蝌蚪porny| 欧美色综合网站| 6080午夜不卡| 国产日韩欧美a| 亚洲码国产岛国毛片在线| 亚洲韩国一区二区三区| 婷婷综合五月天| 国产精品一区二区三区乱码| 99麻豆久久久国产精品免费| 在线欧美一区二区| 日韩精品在线看片z| 国产精品视频免费看| 一区二区三区四区五区视频在线观看| 亚洲成av人**亚洲成av**| 久久se精品一区精品二区| 成人亚洲一区二区一| 欧美性感一类影片在线播放| 精品免费日韩av| 中文字幕在线观看不卡视频| 日韩电影在线观看电影| 丁香激情综合国产| 91精品久久久久久久久99蜜臂| 国产视频视频一区| 亚洲国产精品一区二区www| 国产原创一区二区| 欧美日韩一区高清| 国产精品亲子伦对白| 爽爽淫人综合网网站| 成人h版在线观看| 欧美一区二区精美| 亚洲精品一二三四区| 国产一二精品视频| 欧美精品日韩精品| 亚洲视频你懂的| 国产一区二区视频在线| 欧美视频第二页| 日韩毛片一二三区| 春色校园综合激情亚洲| 91精品国产一区二区三区香蕉| 中文乱码免费一区二区| 精品午夜久久福利影院| 欧美日韩国产天堂| 亚洲精品国产一区二区精华液 | 精品国产乱码久久久久久牛牛| 亚洲女爱视频在线| 成人18视频在线播放| 26uuu亚洲综合色欧美| 日本欧美大码aⅴ在线播放| 色香色香欲天天天影视综合网| 日本一区二区三区dvd视频在线 | 日韩欧美电影一区| 午夜电影网亚洲视频| 欧洲精品一区二区三区在线观看| 亚洲国产成人在线| 国产伦精品一区二区三区免费迷 | 精品国产乱码久久久久久牛牛| 亚洲一区在线观看网站| 91在线porny国产在线看| 亚洲国产激情av| 丰满少妇在线播放bd日韩电影| 精品国产乱码久久久久久老虎| 伦理电影国产精品| 337p粉嫩大胆色噜噜噜噜亚洲 | 波多野结衣亚洲一区| 亚洲精品乱码久久久久久黑人| 东方欧美亚洲色图在线| 国产精品二区一区二区aⅴ污介绍| 国产一区二区精品久久91| 日本一区二区三区视频视频| 99久久综合国产精品| 亚洲色图清纯唯美| 欧美性色黄大片手机版| 日韩精品高清不卡| 宅男在线国产精品| 精品一区二区三区不卡 | 99精品视频在线观看| 成人免费小视频| 欧美亚洲综合一区| 免费成人在线观看| 久久精品一区二区三区四区| 国产91精品精华液一区二区三区 | 日本亚洲免费观看| 日韩免费电影一区| 国产99久久久国产精品免费看| 国产精品免费丝袜| 欧美影视一区在线| 久久99精品久久久久| 国产精品久久久久影院色老大 | 亚洲国产一区二区a毛片| 7777精品伊人久久久大香线蕉超级流畅| 日韩国产欧美一区二区三区| 精品国产乱子伦一区| 92精品国产成人观看免费| 日韩电影免费一区| 中文字幕中文字幕一区| 欧美日韩一区三区四区| 欧美视频一区二区在线观看| 免费成人美女在线观看| 国产精品久久久久久久久晋中| 欧美男男青年gay1069videost| 国产精品一区二区你懂的| 亚洲精品老司机| 久久久久久久久一| 欧美剧情电影在线观看完整版免费励志电影| 另类中文字幕网| 亚洲综合图片区| 国产日韩欧美电影| 91精品国产入口在线| 色综合视频在线观看| 国产乱一区二区| 首页亚洲欧美制服丝腿| 亚洲色图欧美偷拍| 久久蜜桃av一区二区天堂 | 日韩三级精品电影久久久| 91视频国产资源| 国产美女在线观看一区| 亚洲成人免费视频| 综合久久久久久| 久久丝袜美腿综合| 日韩小视频在线观看专区| 91国偷自产一区二区三区成为亚洲经典 | 大美女一区二区三区| 日韩av电影天堂| 香蕉成人啪国产精品视频综合网| 欧美国产97人人爽人人喊| 欧美大黄免费观看| 制服丝袜国产精品| 欧美一区中文字幕| 7777精品伊人久久久大香线蕉的 | 爽好久久久欧美精品| 亚洲国产日日夜夜| 亚洲欧美一区二区三区久本道91| 久久综合五月天婷婷伊人| 欧美大片在线观看一区| 日韩精品一区二区三区蜜臀| 欧美一区二区三区男人的天堂| 欧美日韩一区三区四区| 欧美日韩另类一区| 欧美精品久久久久久久多人混战| 欧美日韩一级黄| 欧美伊人久久久久久久久影院| 日本久久一区二区| 欧美在线观看禁18| 欧美日韩成人在线一区| 91麻豆精品国产自产在线| 日韩一区二区不卡| 精品少妇一区二区三区免费观看| 欧美成人女星排名| 国产欧美一区视频| 亚洲欧洲国产专区| 一区二区三区不卡视频在线观看| 国产美女av一区二区三区| 国产99精品在线观看| 成人网在线播放| 色哟哟精品一区| 欧美高清激情brazzers| 精品对白一区国产伦| 日本一区二区三区免费乱视频| 综合亚洲深深色噜噜狠狠网站| 亚洲尤物视频在线| 日韩激情视频在线观看| 国产精品资源在线看| 波多野结衣在线一区| 在线观看亚洲一区| 日韩欧美国产综合| 国产精品理伦片| 午夜精品久久久久久久久| 久久99热这里只有精品| 波多野结衣视频一区| 91麻豆精品国产91| 国产欧美视频在线观看| 亚洲第一在线综合网站| 黄色日韩网站视频| 色综合天天综合网天天看片| 日韩一级片网址| 亚洲欧美综合在线精品| 日韩成人一区二区三区在线观看| 国产成人免费网站| 欧美乱熟臀69xxxxxx| 中文字幕av一区 二区| 婷婷亚洲久悠悠色悠在线播放| 成人永久免费视频| 69久久夜色精品国产69蝌蚪网| 国产精品嫩草影院av蜜臀| 美腿丝袜亚洲色图| 色吊一区二区三区|