首页 > 代码库 > 编程算法 - 后缀树(Suffix Tree) 代码(C)

编程算法 - 后缀树(Suffix Tree) 代码(C)

后缀树(Suffix Tree) 代码(C)


本文地址: http://blog.csdn.net/caroline_wendy


给你一个长字符串s与很多短字符串集合{T1,, T2, ...}, 设计一个方法在s中查询T1, T2, ..., 要求找出Ti在s中的位置.


代码:

/*
 * main.cpp
 *
 *  Created on: 2014.7.20
 *      Author: Spike
 */

/*eclipse cdt, gcc 4.8.1*/

#include <iostream>
#include <vector>
#include <map>

using namespace std;

class SuffixTreeNode {
	map<char, SuffixTreeNode*> children;
	char value;
	vector<int> indexes;
public:
	SuffixTreeNode() {}
	void insertString(string s, int index) {
		indexes.push_back(index);
		if (s.length() > 0) {
			value = http://www.mamicode.com/s[0];>
输出:

is  1 4 
sip  6 
sis  3 



编程算法 - 后缀树(Suffix Tree) 代码(C)