【文件属性】:
文件名称:串类型的基本定义和实现
文件大小:20KB
文件格式:GZ
更新时间:2021-08-20 11:48:01
数据结构 KMP算法 串的快速匹配 数据类型 c/c++
下载好代码后直接在linux环境下减压,make之后即可产生可执行代码,压缩文件中已经包含了可执行代码。
通过串的堆分配存储结构来实现串的以下功能:
//生成一个值等于串常量chars的串string
int StrAssign(HString *str,char *chars);
//返回串string的长度
int StrLength(HString str);
//比较两个串的大小,如果str1 > str2,返回值>0,如果相等,返回0,如果str1 < str2,返回值<0
int StrCompare(HString str1,HString str2);
//清空串,释放串所占用的空间
int ClearString(HString *str);
//返回串Str1和Str2联合而成的串
HString Concat(HString str1,HString str2);
//返回串str的第pos个字符之后的长度为len的子串
HString SubString(HString str,int pos,int len);
//显示字符串
int StrTrave(HString str);
//-----------------------附加串操作函数--------------------------
//以下串操作可由基本串操作来实现
//串str1复制得到str2
int StrCopy(HString str1,HString *str2);
//串str为空串,返回1,否则返回0
int StrEmpty(HString str);
//如果主串str中存在和串substr相等的子串,则返回子串在主串中pos个字符之后第一次出现的位置 ,运用了KMP算法
int Index(HString str,HString substr,int pos);
//Index中包括了一个静态函数get_next(),这个函数可以得到字符串的最简匹配值(kmp算法中字符匹配失败后的下一个最佳匹配值)
//用字符串Tstr替换主串str中出现的所有与substr相等的子串
int StrReplace(HString **str,HString substr,HString Tstr);
//在串str的第pos个字符之后插入串substr
int StrInsert(HString *str,HString substr,int pos);
//从串str的第pos个字符起删除len个字符
int StrDelete(HString **str,int pos,int len);
//销毁现有串str
int StrDestory(HString *str);
【文件预览】:
str
----hstring.c(4KB)
----main.o(14KB)
----hstring.h(2KB)
----str(26KB)
----hstring.o(19KB)
----.main.c.swp(12KB)
----Makefile(401B)
----main.c(2KB)