zoukankan
html css js c++ java
用指针传递的字典树
#include <string> using namespace std; #define NUM 26 #define TYPE 'A' class dictree { public: dictree *child[NUM]; string *value;//节点所存的数据,根据题目而使用不同的类型或数据 dictree(){memset(child,0,sizeof(child));value=NULL;} ~dictree(); bool insert(string s, string s2); string search(string s); }; //把信息s2插入到结点s处 bool dictree::insert(string s,string s2) { int len,i,j; dictree *current,*newnode; len=s.length(); if(len==0)return 0; current=this; for(i=0;i<len;i++) { if(current->child[s[i]-TYPE]!=0) current=current->child[s[i]-TYPE]; else { newnode=(dictree *)malloc(sizeof(dictree)); for(j=0;j<26;j++) newnode->child[j]=0; current->child[s[i]-TYPE]=newnode; current=newnode; } if(i == len - 1)current->value=new string(s2); } return 0; } //搜索s结点的信息 string dictree::search(string s) { int len,i; string ret = ""; dictree *current; len=s.length(); if(len==0)return ret; current=this; for(i=0;i<len;i++) { if(current->child[s[i]-TYPE]!=0) current=current->child[s[i]-TYPE]; else return ret; if(i == len - 1)ret = *current->value; } return ret; } dictree::~dictree() { if(this == NULL) return; for(int i = 0; i < 26; i++) delete this->child[i]; delete value; }
查看全文
相关阅读:
ubuntu开启SSH服务
Ubuntu修改虚拟内存(即swap空间)
【转】Ubuntu 13.10中MyEclipse 10.6+下载+安装+破解
【转】 ubuntu下安装mysql
【转】 Ubuntu 11.04 下安装配置 JDK 7
Linux非root用户安装jdk和tomcat
algorithm之改变序列算法--待解决
时间日期设置--ctime头文件
C中的一些函数
algorithm之不变序列操作
原文地址:https://www.cnblogs.com/windmissing/p/2559822.html
最新文章
6.2 高质量的“用例描述 ”
6.1 从分析到设计
5.3 系统顺序图
5.2 领域模型建模指导
5.1 领域模型
JQUERY1.9学习笔记 之基本过滤器(七) 语言选择器
JQUERY1.9学习笔记 之基本过滤器(六) 页眉选择器
JQUERY1.9学习笔记 之基本过滤器(五) 大于选择器
JQUERY1.9学习笔记 之基本过滤器(四) 首元素选择器
JQUERY1.9学习笔记 之基本过滤器(三)偶数选择器
热门文章
JQUERY1.9学习笔记 之基本过滤器(二) 等于选择器
JQUERY1.9学习笔记 之基本过滤器(一) 动态选择器
JQUERY1.9学习笔记 之层级选择器(四)
使用 HTML5 设计辅助功能
什么是响应式网页设计?
[fowarding] myeclipse配置tomcat
[fowarding]Ubuntu jsp平台使用JDBC来连接MySQL数据库
[fowarding]Java程序员十戒
Ubuntu 下开启远程连接 MySQL
【转】 应用系统性能估算
Copyright © 2011-2022 走看看