教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 基础教育 >

数据结构上机作业1-5章(7)

来源:网络收集 时间:2026-05-27
导读: // 将s的值赋给t。s的实际参数是串变量。 int StrCompare(StringType s, StringType t); // 比较s和t。若s>t,返回值>0;若s=t,返回值=0;若s // 返回s中的元素个数,即该串的长度。 StringType Concat(StringType

// 将s的值赋给t。s的实际参数是串变量。 int StrCompare(StringType s, StringType t);

// 比较s和t。若s>t,返回值>0;若s=t,返回值=0;若s

// 返回s中的元素个数,即该串的长度。 StringType Concat(StringType &s, StringType t); // 返回由s和t联接而成的新串。

StringType SubString(StringType s, int start, int len);

// 当1<=start<=StrLength(s)且0<=len<=StrLength(s)- start+1时, // 返回s中第start个字符起长度为len的子串,否则返回空串。 // 注意,不要使用 \的形式为 StringType 类型的变量赋值 , // 而要使用 StrAssign 函数!!!

void Replace(StringType &S, StringType T, StringType V)

/* 以串 v 置换串 s 中出现的所有和串 t 相同的非空串 */ {

int i; StringType head,tail; //InitStr(head);InitStr(tail);

for(i=1;i<=StrLength(S)-StrLength(T)+1;i++) if(!StrCompare(SubString(S,i,StrLength(T)),T)) {

StrAssign(head,SubString(S,1,i-1));

StrAssign(tail,SubString(S,i+StrLength(T),StrLength(S)-i-StrLength(T)+1)); StrAssign(S,Concat(head,V)); Concat(S,tail);

i=i+StrLength(V)-1; } }

4.13③ 编写算法,从串s中删除所有和串t相同的子串。 要求实现以下函数:

void DelSubString(StringType &scrStr, StringType subStr); /* Remove all substring matching 'subStr' from 'scrStr'. */

StringType是串的一个抽象数据类型,它包含以下6种基本操作: void InitStr(StringType &s); // 初始化s为空串。

void StrAssign(StringType &t, StringType s); // 将s的值赋给t。s的实际参数是串变量。 int StrCompare(StringType s, StringType t);

// 比较s和t。若s>t,返回值>0;若s=t,返回值=0;若s

// 返回s中的元素个数,即该串的长度。 StringType Concat(StringType &s, StringType t); // 返回由s和t联接而成的新串。

StringType SubString(StringType s, int start, int len);

// 当1<=start<=StrLength(s)且0<=len<=StrLength(s)- start+1时, // 返回s中第start个字符起长度为len的子串,否则返回空串。

// 注意,不要使用 \的形式为 StringType 类型的变量赋值 , // 而要使用 StrAssign 函数!!!

void DelSubString(StringType &scrStr, StringType subStr) /* Remove all substring matching 'subStr' from 'scrStr'. */ {

StringType head,tail,S; int i;

InitStr(head); InitStr(tail);

for(i=1;i<=StrLength(scrStr)-StrLength(subStr)+1;i++)

if(!StrCompare(SubString(scrStr,i,StrLength(subStr)),subStr)) {

StrAssign(head,SubString(scrStr,1,i-1));

StrAssign(tail,SubString(scrStr,i+StrLength(subStr),StrLength(scrStr)-i-StrLength(subStr)+1)); StrAssign(scrStr,Concat(head,tail)); i--; /*向后退一位*/ } }

数据结构上机作业1-5章(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/565287.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)