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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? matcher.cpp

?? 可自動識別自然語言,句子匹配等功能,達到人工智能識別
?? CPP
字號:
/////////////////////////////////////////////////////////////////////////////////
//
// Sentence matcher
// @author: Gonzales Cenelia
// homepage: www.ai-search.4t.com
//
// when applied to strings,the "Levenstein distance" is usualy used 
// to measure the distances between words but we could also use it to measure 
// the distance between sentences,the following code is a simple implementation 
// of an algorithm that trys to measure the distances between two sentences 
// by using the "Levenstein distance". //********************
//
// this code is copyrighted and has limited warranty. //***************
//////////////////////////////////////////////////////////////////////////
#include "matcher.h"

unsigned int tokenized_pattern_size;
unsigned int tokenized_text_size;

// tokenize a string and puts the result into a vector
void tokenize_string(const char *str, vstring &dest) {
	int len = strlen(str);
	char *szString = new char[len + 1];
	strcpy(szString, str);
	char *token = strtok(szString, seps);
	while(token != NULL) {
		dest.push_back(token);
		token = strtok(NULL, seps);
	}
	delete szString;
}

// search for a string inside a vector of strings
int search_string(const char *str, vstring v) {
	int size = v.size();
	for(int i = 0; i < size; ++i) {
		if(v[i] == str) {
			return i;
		}
	}
	return -1;
}

// compress sentences by replacing each word 
// by characters of the english alphabet
void compress_strings(char *pattern, char *text) {
	vstring v1, v2, temp;
	tokenize_string(pattern, v1);
	tokenize_string(text, v2);
	std::stringstream s1, s2;
	int size1 = v1.size();
	int size2 = v2.size();
	tokenized_pattern_size = size1;
	tokenized_text_size = size2;
	for(int i = 0, j = -1, prev_index; i < size1; ++i) {
		if(search_string(v1[i].c_str(), temp) == -1) {
			temp.push_back(v1[i].c_str());
			++j; prev_index = j;
		}
		s1 << symbols[j];
	}
	int index = prev_index, counter = 0, result;
	for(i = 0; i < size2; ++i) {
		result = search_string(v2[i].c_str(), temp);
		if(result == -1) {
			temp.push_back(v2[i].c_str());
			if(counter == 0) {
				index = prev_index + 1;
				++counter;
			}
			else {
				++index;
			}
		}
		else {
			if(index > prev_index) {
				prev_index = index;
				counter = 0;
			}
			index = result;
		}
		s2 << symbols[index];
	}
	strcpy(pattern, s1.str().c_str());
	strcpy(text, s2.str().c_str());
}

// measure the distance between two sentences by using 
// the "Levenshtein Distance"
int find_distance(const char *pattern, const char *text) {
	int patLen = strlen(pattern);
	int textLen = strlen(text);

	char *pszPattern = new char[patLen + 1];
	char *pszText = new char[textLen + 1];

	strcpy(pszPattern, pattern);
	strcpy(pszText, text);

	// compress the given sentences
	compress_strings(pszPattern, pszText);

	patLen = strlen(pszPattern);
	textLen = strlen(pszText);
	// measure the distances between the new compressed strings
	int retval = LD(pszText, textLen, pszPattern, patLen);

	delete pszPattern;
	delete pszText;
	return retval;
}

// Fuzzy Sentence Match
// function for matching two sentences
// returns a value between 0 and 1
// the closer that value is to 0 the closer the sentences are
float match(const char *pattern, const char *text) {
	int distance = find_distance(pattern, text);
	float max_size = max(tokenized_pattern_size, tokenized_text_size);
	return distance/max_size;
}




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩视频123| 色猫猫国产区一区二在线视频| 亚洲色图视频网| 欧美高清在线视频| 国产欧美日韩卡一| 久久久久久久久久久99999| 99国产欧美久久久精品| 国产一区二区精品久久| 久久99国产精品麻豆| 麻豆91精品91久久久的内涵| 久久精品国产免费看久久精品| 精品一区二区免费| 国产精品一级片| 成人精品视频网站| 日本伦理一区二区| 精品视频在线视频| 日韩三级精品电影久久久| 精品日本一线二线三线不卡 | 洋洋成人永久网站入口| 午夜久久久影院| 蜜臀91精品一区二区三区| 国产毛片精品一区| 99精品视频在线观看免费| 欧美日韩另类一区| 日韩精品一区二区在线观看| 国产精品免费久久久久| 亚洲柠檬福利资源导航| 日日噜噜夜夜狠狠视频欧美人| 理论片日本一区| 成人福利视频在线| 91精品国产色综合久久ai换脸| 26uuuu精品一区二区| 亚洲久草在线视频| 紧缚奴在线一区二区三区| 91色婷婷久久久久合中文| 欧美一级欧美一级在线播放| 国产亚洲一区二区三区四区| 亚洲国产美女搞黄色| 国产精品一区二区三区乱码| 色哟哟在线观看一区二区三区| 欧美一卡二卡在线| 亚洲色图19p| 激情六月婷婷久久| 日本高清无吗v一区| 国产日韩视频一区二区三区| 亚洲成av人综合在线观看| 成人教育av在线| 欧美成人性战久久| 夜夜精品视频一区二区| 丰满少妇久久久久久久| 日韩欧美一级精品久久| 亚洲欧美偷拍卡通变态| 国产一区二区免费在线| 337p亚洲精品色噜噜噜| 亚洲免费av高清| 国产成人在线看| 精品久久五月天| 日本成人在线网站| 欧美亚洲一区二区在线| 18涩涩午夜精品.www| 国产一区二区三区免费观看| 日韩午夜av电影| 亚洲超碰97人人做人人爱| 日本乱人伦aⅴ精品| 国产精品美日韩| 国产成人在线视频网站| 久久久噜噜噜久久中文字幕色伊伊| 日韩av午夜在线观看| 欧美性猛片xxxx免费看久爱| 亚洲精品国产一区二区精华液 | 91.com在线观看| 亚洲一区二区精品久久av| 色天天综合色天天久久| 中文字幕日韩av资源站| 成人福利视频网站| 亚洲欧美在线观看| 色噜噜偷拍精品综合在线| 亚洲丝袜另类动漫二区| 色视频欧美一区二区三区| 亚洲四区在线观看| 在线视频欧美区| 亚洲午夜影视影院在线观看| 欧美午夜不卡视频| 亚洲成人一二三| 欧美一级在线免费| 激情综合色综合久久| 国产欧美日韩精品a在线观看| 国产精品1区2区3区在线观看| 欧美国产亚洲另类动漫| 91视视频在线直接观看在线看网页在线看 | 91美女视频网站| 一区二区三区高清| 在线播放中文字幕一区| 蜜桃视频一区二区三区在线观看| 欧美一级久久久| 国产成人免费在线| 亚洲一区二区高清| 日韩女优电影在线观看| 国产精品88888| 亚洲同性gay激情无套| 欧美三级中文字幕在线观看| 久久精品国产久精国产| 欧美国产综合一区二区| 在线观看日韩电影| 激情欧美一区二区三区在线观看| 国产欧美日韩卡一| 欧美日韩国产三级| 国产一区二区0| 亚洲老司机在线| 欧美精品一区二区三区蜜桃| 99这里都是精品| 日本欧洲一区二区| 国产精品伦理一区二区| 欧美精品高清视频| 成人手机电影网| 日本系列欧美系列| 亚洲欧洲另类国产综合| 91麻豆精品国产91久久久久久久久 | 亚洲一卡二卡三卡四卡| 亚洲精品在线一区二区| 精品1区2区3区| 成人免费观看视频| 麻豆国产精品视频| 亚洲精品va在线观看| 亚洲国产成人在线| 欧美电影免费观看完整版| 欧洲日韩一区二区三区| 懂色一区二区三区免费观看 | 日韩免费视频线观看| 日本高清免费不卡视频| 成人午夜免费电影| 国产麻豆精品在线观看| 午夜精品久久久久影视| 亚洲另类在线制服丝袜| 国产精品美女久久久久aⅴ国产馆| 欧美一区二区三区系列电影| 在线观看亚洲精品视频| aaa国产一区| 粉嫩aⅴ一区二区三区四区五区| 免费看精品久久片| 婷婷久久综合九色国产成人| 一区二区三区中文字幕在线观看| 中文在线一区二区| 2021中文字幕一区亚洲| 日韩欧美成人一区二区| 欧美喷潮久久久xxxxx| 91国偷自产一区二区开放时间 | 91小视频在线免费看| 成人久久18免费网站麻豆 | 偷拍亚洲欧洲综合| 一级精品视频在线观看宜春院| 国产精品美女久久久久久2018 | 91精品国产综合久久久久久漫画| 在线观看亚洲a| 欧美私模裸体表演在线观看| 欧洲一区二区三区在线| 欧美无乱码久久久免费午夜一区| 91丨九色porny丨蝌蚪| 91在线国产观看| 色综合久久中文字幕| 色欧美88888久久久久久影院| 91在线高清观看| 色悠悠亚洲一区二区| 欧美性猛交一区二区三区精品| 精品视频在线看| 欧美无人高清视频在线观看| 欧美裸体bbwbbwbbw| 91精品国产综合久久精品| 精品欧美久久久| 久久精品亚洲精品国产欧美kt∨| 国产精品无码永久免费888| 一区在线观看视频| 亚洲女同ⅹxx女同tv| 日韩精品免费视频人成| 国内精品第一页| 成人国产电影网| 欧美性猛交xxxx乱大交退制版| 91精品国产色综合久久不卡蜜臀| 亚洲精品一区二区在线观看| 中文一区在线播放| 亚洲一二三四在线观看| 久久成人综合网| 成人黄色小视频在线观看| 在线亚洲人成电影网站色www| 7777精品伊人久久久大香线蕉| 精品国产乱码久久久久久蜜臀| 中文字幕在线不卡| 看国产成人h片视频| av在线播放不卡| 欧美伦理影视网| 国产精品久久综合| 轻轻草成人在线| 91丨九色丨黑人外教| 日韩亚洲国产中文字幕欧美| 成人欧美一区二区三区小说| 麻豆国产精品777777在线| 懂色av一区二区夜夜嗨| 欧美日韩国产系列| 亚洲日本在线天堂| 国产剧情av麻豆香蕉精品|