CH4-串、数组和广义表

2023-11-07


20220111141455

4.1 串的定义

20220111144240

20220111155240

20220111155349

20220111155628

4.2 案例引入

20220111155736

20220111155853

4.3 串的类型定义、存储结构及运算

20220111160154

20220111160230

20220111160307

4.3.1 顺序串

#define MAXLEN 255typedef struct{
	char ch[MAXLEN+1];		//存储串的一维数组
	int length;				//串的当前长度长度
}SString;

4.3.2 链串

20220111160517

#define CHUNKSIZE 80	//块的大小可由用户定义
typedef struct Chunk{
    char ch[CHUNKSIZE];
    struct Chunk *next;
}Chunk;

typedef struct{
    Chunk *head,*tail;	//串的头指针和尾指针
    int curlen;			//串的当前长度
}LString;				//字符串的块链结构

4.3.3模式匹配算法

20220111161137

BF算法

20220111161245

20220111161431

20220111161513

20220111161613

20220111161836

int Index_BF(SString s, SString T, int pos ){
    int i=pos, j=1;
    while (i<=S.length && j<=T.length) {
        if (s.ch[i]==t.ch[j])
        	{++i; ++j; }	//主串和子串依次匹配下一个字符
        else 	
        	{i=i-j+2; j=1;}//主串、子串指针回溯重新开始下一次匹配
    }
    if (j>=Tlength)
        return i-T.length ;//返回匹配的第一个字符的下标
    else 
        return 0;			//模式匹配不成功
}

20220111162349

KMP算法

20220111162528

20220111162929

20220111163033

20220111163143

int lndex_KMP (SString S,SString T, int pos){
    i= pos,j =1;
    while (i<S.length && j<T.length) {
        if (j==O || S.ch[i]==T.ch[j])
            { i++; j++; }
        else
            j=next[j];			//i不变,j后退
    }
    if (j>T.length) 
        return i-T.length;		/*匹配成功*/
    else
        return O; 				/*返回不匹配标志*/
}

20220111163716

20220111164423

20220111164147

void get_nextval(SString T, int &nextval[]){
    i= 1; nextval[1] = 0; j = 0;
	while( i<T.length){
        if(j==0 || T.ch[i]== T.ch[j]){
            ++i; ++j;
            if(T.ch[i] != T.ch[j]) 
                nextval[i] = j;
            else 
                nextval[i] = nextval[j];
        }
        else j = nextval[j];
    }
}

4.4 数组

20220111175128

20220111175215

20220111182445

20220111182613

4.4.1抽象数据类型定义

20220111182833

20220111183040

20220111183213

4.4.2数组的顺序存储

20220111183520

20220111183703

20220111184012

20220111184249

20220111184331

20220111184438

20220111184542

20220111184712

20220111184808

20220111184837

20220111184909

20220111184934

4.4.3特殊矩阵的压缩存储

20220111185113

20220111185355

对称矩阵

20220111185502

20220111185553

三角矩阵

20220111185813

对角矩阵

20220111190029

20220111190257

稀疏矩阵

20220112163730

20220112163949

20220112164122

20220112164333

20220112164452

20220112164503

4.5 广义表

20220112164750

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gdubUsc4-1641978539524)(…/…/…/…/wenjian/1784036791/Image/SharePic/20220112165121.png)]

20220112165241

4.5.1性质

20220112165448

20220112165705

4.5.2与线性表的区别

20220112165818

4.5.3基本运算

20220112170057

4.6案例分析与实现

【案例4.1】: 病毒感染检测

20220112170431

20220112170513

20220112170536

FTzc2Gct-1641978539525)]

4.5.3基本运算

[外链图片转存中…(img-o3quQJd2-1641978539526)]

4.6案例分析与实现

【案例4.1】: 病毒感染检测

[外链图片转存中…(img-SzK45kpN-1641978539526)]

[外链图片转存中…(img-GTbwZSQO-1641978539527)]

[外链图片转存中…(img-zEajeiB7-1641978539527)]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CH4-串、数组和广义表 的相关文章

随机推荐

  • Nest.js 写一个简单的增删改查

    这篇文章主要记录了一个简单的增删改查应用 涉及到了MongoDB Swagger 以及以express为底层的Nest js框架 简单介绍一下用到的工具 swagger就不用说了 MongoDB同样使用docker容器和mongo expr
  • MySql5.6 Window超详细安装教程

    林炳文Evankaka原创作品 转载请注明出处http blog csdn net evankaka 目录 一 安装包准备二 开始安装三 验证安装四 客户端工具 一 安装包准备 1 下载MySql5 6 http www mysql com
  • 配置完dcom需要重启计算机,DCOM电脑自动重启(win7系统一直反复重启)

    电脑频繁重启会怎么样 电脑给我们带来了便利 但也给我们带来了许多问题 有网友反映电脑不到10分钟就会自动重启 但是不知道是什么原因导致的 很困惑 针对这种情况 边肖给大家带来了电脑自动重启的原因和相应的解决方案 可以参考一下 电脑经常自动重
  • 生成式 AI 行业解决方案指南与部署实践

    生成式 AI 和 Stable diffusion 生成式 AI Generative AI 可以生成自然语言 图像 视频和音乐等数字化内容 目前热点应用总体上可以分为基于 Stable Diffusion 的图片内容生成类任务以及基于大语
  • 《数据库原理及应用》MySQL版知识点总结

    1 数据库系统的基本原理 1 1 数据库系统概述 1 1 1 基本概念 1 1 2 数据管理技术的发展阶段 1 2 数据模型 1 2 1 数据抽象的过程 1 2 2 关系模型 1 3 数据库体系结构 1 3 1 数据库系统的三级结构 1 3
  • C语言 malloc(0)的问题

    转载地址 http blog csdn net bigheaven article details 7286862 感谢作者 如下 cpp view plain copy include
  • quasar使用vxe-table插件

    问题描述 提示 这里描述具体问题 在前端开发时经常会用到表格显示数据 但是在quasar的q table中没有能实现我们目的属性 这时就需要更强大的插件来完成 这个就是vxe table插件 实现更多的表格功能 原因分析 提示 这里填写问题
  • 作者主题模型(Author-Topic Model)的Python Gensim实现

    Gensim中的主题模型包括三种 分别是LDA Latent Dirichlet Allocation 主题模型 加入了作者因素的作者主题模型 Author Topic Model ATM 和加入了时间因素的动态主题模型 Dynamic T
  • html怎么本地存储数据库中,html5本地存储之localstorage 、本地数据库、session

    点评 这篇文章主要介绍了html5本地存储的localstorage 本地数据库 sessionStorage简单使用示例 需要的朋友可以参考下 html5的一个非常cool的功能 就是web storage 类似于之前的cookie 不过
  • algorithm头文件常用函数

    algorithm意为 算法 是C 的标准模版库 STL 中最重要的头文件之一 提供了大量基于迭代器的非成员模板函数 类 别 C 标准库 头文件 include
  • uniapp error页面配置

    uniapp暂不支持自定义webview所以我们用自带的error 首先在根目录新建生成此文件hybrid html error html 在manifest json 源码试图 中配置error 必须在app plus下 这里要注意路径问
  • 伯努利分布方差_【数据挖掘建模】之常见概率分布总结

    1 伯努利分布 伯努利分布又称为0 1分布 如果随机变量X只取0和1两个值 并且相应的概率为 P x 1 p P x 0 1 p 且0 令q 1 p X服从参数为p的伯努利分布 则对应的期望和方差如下 常见的抛硬币实验就是n重伯努利试验 其
  • selenium grid4入门-standalone模式

    参考官网 Getting started with Selenium Grid Selenium selenium grid4有三种模式 Standalone模式 顾名思义 独立的 就是将主控和节点都在同一台机器上 standalone模式
  • tf好朋友之matplotlib的使用——坐标能见度设置

    tf好朋友之matplotlib的使用 坐标能见度设置 坐标能见度设置常用函数 set bbox方法 应用示例 坐标太多挡住其它标记 挡住彼此怎么办 那必然是 给他们一个透明度啊 坐标能见度设置常用函数 set bbox方法 对坐标进行透明
  • 解决Nacos启动时遇到的一些错误

    当我们双击nacos的bin目录下的statup cmd启动Nacos时 发现报以下错误 dba load error load jdbc properties error 报错的原因是 数据库找不到 没有导入 解决方法步骤 在安装的nac
  • qt 内存泄漏处理办法

    windows 版本 windows msvc版本 可以使用vld检测 可以得到内存泄漏点的调用堆栈 如果可以的话 还可以得到其所在文件及行号 可以得到泄露内存的完整数据 可以设置内存泄露报告的级别 缺点 1 只针对 Visual C 即m
  • 【ag-grid-vue】列定义(Updating Column Definitions)

    列定义一节解释了如何配置列 可以在初始设置列之后更改列的配置 本节介绍如何更新列定义 添加和删除列 可以通过更新提供给网格的列定义列表来添加和删除列 当设置新列时 网格将与当前列进行比较 并计算出哪些列是旧的 要删除 哪些列是新的 创建的新
  • Python爬虫学习基础——5分钟学会爬取B站视频日播放量排行

    Python爬虫学习基础 5分钟学会爬取B站视频日播放量排行 基础包含 requests pyquery 进入正题 基础包含 这也是我当初第一次学习爬虫时做的练习 感觉给初学者练笔挺不错的 运用的知识也不是太多 只运用了requests库以
  • 数据结构练习题-1

    1 简述下列概念 数据 数据元素 数据项 数据对象 数据结构 逻辑结构 存储结构 抽象数据类型 答案 数据 是客观事物的符号表示 指所有能输入到计算机中并被计算机程序处理的符号的总称 如数学计算中用到的整数和实数 文本编辑所用到的字符串 多
  • CH4-串、数组和广义表

    文章目录 4 1 串的定义 4 2 案例引入 4 3 串的类型定义 存储结构及运算 4 3 1 顺序串 4 3 2 链串 4 3 3模式匹配算法 BF算法 KMP算法 4 4 数组 4 4 1抽象数据类型定义 4 4 2数组的顺序存储 4