前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件设计(九)

软件设计(九)

作者头像
用户9919783
发布2023-02-28 09:17:46
4770
发布2023-02-28 09:17:46
举报
文章被收录于专栏:后端从入门到精通

软件设计(八)

81、模块A将学生信息,即学生姓名、学号、手机等放到一个结构体系中,传递给模块B,模块A和B之间的耦合类型为 什么耦合?

数据耦合:指两个模块之间有调用关系,传递简单的数据值,相当于高级语言的值传递。

标记耦合:指两个模块之间传递的是数据结构。

所以答案是 标记耦合。

控制耦合:指一个模块调用另一个模块时,传递的是控制变量,被调用的模块通过控制变量的值选择执行模块的某个功能。

内容耦合:当一个模块直接使用另一个模块的数据,或者通过非正常入口转入另一个模块的时候。

82、状态(state)模式:允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。

83、编译过程进行语法分析主要分析的是 程序语句的结构是否合法

解析:

编译过程一般分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成,以及出错处理和符号表管理。

语法分析是词法分析的基础上分析短语(表达式)、句子结构是否正确。

词法分析是识别一个个单词,基本字符,标识符,常数,运算符,界符。

84、设S是一个长度为n的非空字符串,其中字符各不相同,则其互异的非平凡子串(非空且不同于S本身)个数是多少个?

解析:

当 abcdefg字符串。

长度为6的非平凡子串:abcdef、bcdefg。所以是n-5=2个

长度为5的非平凡子串:abcde、bcdef、cdefg。所以是n-4=3个。

n-3=4

n-2=5

n-1=6

所以 (n+2)(n-1)/2 个。

85、某二叉树采用二叉链表表示(即结点的两个指针分别指示左、右孩子),当该二叉树包含k个结点时,其二叉链表结点中必有 多个 空的孩子指针。

解析:k+1

当二叉树包含k个结点时,链表中每个结点都有两个孩子指针,共2k个,每个指针包含一个父子关系。非空二叉树除了根结点外,每个结点都有唯一的父结点,因此2k个孩子指针中k-1个表示结点的父子关系,其余的k+1个孩子指针都为空指针。

86、解析:

1)无向连通图G的叙述中,任意两个顶点之间存在路径。(任意两个顶点之间不存在 边)

2)从G中任意顶点出发可遍历图中所有顶点。

3)G的邻接矩阵是对称矩阵。

87、现需要对一个基本有序的数组进行排序,此时采用最适应的算法为 插入排序算法,时间复杂度为 O(n)

解析:

插入排序算法最好的情况下复杂度是O(n),其他情况下是O(n²)。

快速排序在有序的情况下,其计算复杂度最坏的情况下是O(n²),其他情况是O(nlgn)。

归并排序和堆排序算法在所有情况下的时间复杂度为O(nlgn)。

88、相对于TCP,UDP的优势是 开销较小

传输协议层主要TCP和UDP。TCP较为复杂,有3次握手动作,传输过程中可以实现可靠性、流量控制和拥塞控制,因此开销较大

UDP协议主要通过端口号实现传输层的寻址,开销较小

89、email使用两个协议,SMTP(简单邮件传送协议)和POP3(邮局协议)

SMTP用于发送邮件,端口号是25

Pop3接受邮件,端口号是110.

这两个都是基于TCP协议的应用层协议。

90、SNMP 是采用UCP协议封装的。

SMTP则采用的是TCP协议。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-02-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 后端从入门到精通 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档