错题集整理-上午题

2024-9-25 17:07:29

链表

image-20240925171325379

解析:

A选项,链表每增加一个节点,数据存储空间随着变大,A选项正确

B选项,链表元素由数据域指针域组成,指针域用于指向直接后继元素的地址,由于链表元素不一定是连续的,因此整个链表的存取必须从头指针开始,B选项错误

C选项,插入和删除操作不需要移动元素,指向改变指针域的指向即可,C选项正确

D选项,链表不需要连续的存储空间存储,因此无需实现估计存储空间大小,D选项正确


统一过程模型

image-20240925172251253

解析:

谐音记忆: 演进 , 精化

起始阶段:起始阶段专注于项目的初创活动

精化阶段:精化阶段在理解了最初的领域范围之后进行需求分析架构演进

构建阶段:构建阶段关注系统的构建,产生实现模型

移交阶段:移交阶段关注于软件提交方面的工作,产生软件增量


面向对象

image-20240925174247339

image-20240925174449184


加密算法

image-20240925174715078


  • 典型的对称加密算法:DES,3DES,AEC
  • 典型的非对称加密算法:RSA,ECC
  • 典型的摘要算法:SHA,MD5

哈夫曼

image-20240925180122193

每个字符一开始都是叶子结点


基于构建的开发

image-20240925175213492

基于构件的开发是指利用预先打包的构件构造应用系统。构件可以是组织内部开发的构件,也可以是商品化成品软件构件。基于构件的开发模型具有许多螺旋模型的特点,它本质上是演化模型,需要以迭代方式构建软件。其不同之处在于,基于构件的开发模型采用预先打包的软件构件开发应用系统


设计模块

image-20240925175544543

数据库

image-20240925180640364


算法

折半查找

image-20240925181540717

image-20240925181740975


贪心策略

image-20240925182103861

贪心算法是指在对问题求解时,总是 做出 在当前看来是最好的选择

  • 分数背包部分背包问题,物品可选择部分或全部进背包直至装满背包,通过贪心算法求解可将单位价值最大的物品 优先 ** 放入背包以实现背包物品价值的最大化**

  • 0-1背包指物品整体放入不放入背包,因此不一定能完全装满背包,采用贪心算法可以取得局部最优解,但不一定是全局最优解

  • 旅行商问题是指旅行商要到若干个城市旅行,每访问一个城市后, 都会回到最初开始的城市用贪心法不一定能求得最优解

  • 最长公共子序列用贪心法也不一定能求得最优解


白盒测试

image-20240925182722589

白盒测试原则如下:

(1)所有独立路径至少执行一次

(2)取“”和取“”的两种逻辑判断至少都能执行一次

(3)每个循环都应在边界条件和一般条件下各执行一次

(4)测试程序内部数据结构有效性


判定覆盖

使程序中每条分支都至少执行一次

image-20240929182607944


image-20240929190252071

img

设计2个测试用例执行路径:

①②③④⑦⑧⑨⑩;①②③⑤⑦⑥③

或者

①②③④⑦⑥③;①②③⑤⑦⑧⑨⑩

即可满足判定覆盖。

语句覆盖

image-20240929182738933


image-20240930112634151


image-20240930103043650


路径覆盖

取足够的测试用例,使得程序的每条可能执行到的路径都至少经过一次(如果程序中有环路,则要求每条环路路径至少经过一次

image-20240929191227654

如图:如图每个判断都需要两个用例,因此需要6个测试用例


image-20240930105112626


image-20240930111216432


image-20240930110616477


黑盒测试

因果图鱼骨图(又名因果图、石川图)

是一种发现问题“根本原因”的分析方法,常用在项目管理中,黑盒测试也可以使用该方法

有效等价类

边界值分析

输入输出边界值进行测试的一种黑盒测试方法

甘特图

image-20240925183249798


重载和重写

image-20240925183656904


浮点数

image-20240925183932144


image-20241008153134611


系统总线

image-20240929163227333

解析

按连接部件不同,总线可分为:片内总线系统总线通信总线

片内总线是芯片内部的总线,如CPU内部的总线。

系统总线CPU主存I/O设备各大部件之间的信息传输线。

通讯总线用于计算机系统之间或与其他系统之间的通信。


image-20240929181744480


OSI参考模型

image-20240929163948311

解析

1.应用层(第7层):直接与用户和应用程序交互,提供网络服务,如HTTP、FTP等。

2.表示层(第6层):负责数据格式的转换、压缩和加密,确保不同系统之间的兼容性。

3.会话层(第5层):管理会话和连接,控制对话的建立、维护和终止。

4.传输层(第4层):提供端到端的通信,确保数据完整性和顺序,如TCP和UDP。

5.网络层(第3层):负责数据包的路由和转发,处理逻辑地址,如IP协议。

6.数据链路层(第2层):管理物理地址和错误检测,确保数据在同一网络内的传输。7.物理层(第1层):处理物理媒介的传输,涉及电气信号、光信号和传输介质


软件著作权

image-20240929164420801

解析

  1. 署名权不可以继承, 看到所有权利的时候, 需要想到署名权
  2. 学习和研究, 可以不向软件著作权人支持报酬
  3. 部分或者全部转让, 这里的“全部”通常指的是经济权利,例如复制权、发行权、改编权等,但不包括署名权署名权始终属于原作者,不能转让

image-20241008203507820

对于著作人身权,也就是作者的署名权、修改权、保护作品完整权等权力,《中华人民共和国著作权法》规定上述权利的保护期不受限制


敏捷开发

image-20240929165557801

解析

极限编程: 测试先行,计划赶不上变化

水晶法: 项目规模,重要性

并列争球法: 30天作为一个冲刺

自适应ASD: 复杂自适用, 提高组织的自适用能力

image-20240930115114638


敏捷统一过程(AUP)

image-20240930115316393


开发模型

image.png


image-20240930120310618


快速原型模型

image-20240930115457156


瀑布模型

image-20240930115804537


喷泉模型

image-20240930115949086


image-20240930120027754



UML

序列图

特征

  1. 有垂直生命线
  2. 有水平消息箭头.强调消息传递的时间顺序

image-20240929171014363


用例图

特征

  1. 椭圆形用例框

概念

系统在它的周边环境的语境中所提供的外部可见服务

类图

协作图

特征

  1. 对象之间的链接线标注消息序号,强调对象关系

概念

状态图

特征

  1. 圆角矩形

箭头表示状态之间的转移,突出状态变化

概念

活动图

特征

开始结束圆形表示,活动用矩形表示,控制流用箭头连接

概念

系统内从一个活动到另一个活动的流程

组件图

特征

概念

部署图

特征

概念

对象图

特征

概念

展示某一时刻一组对象以及它们之间的关系


设计模式

命令模式

将一个请求封装为对象,从而可以用不同的请求对客户进行参数化

观察者模式

当一个对象的状态发生改变时,依赖于它的对象都得到通知并被自动更新

状态模式

允许一个对象在其内部状态改变时改变它的行为

策略模式

定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换

举例: 要求能根据季节,节假日等推出不同的旅行定价包,如淡季打折、一口价等


入侵防御系统

image-20240929172558811

认证方式安全性

image-20240929172751866


CA

image-20240929173051730


image-20240929173218097


软件可维护性

image-20240929173322524


虚拟存储

image-20240929173448654


image-20240929174946000


image-20240929180155441


image-20240929175431860

SSL

image-20240929173928321


管道过滤器

image-20240929174209939

Python

  1. 没有内置的switch...case语句

页式存储

image-20240929180029604


CPI 与 MIPS

image-20240929181236963


image-20240929181614670


加工

image-20240930090904669


项目管理

风险管理

image-20240930091157234


image-20240930092227426


软件设计

image-20240930094607955


软件测试

image-20240930104752440


image-20240930111027932


系统可维护性

image-20240930111130678


image-20240930112057373


image-20240930113910596


系统验收测试

image-20240930113000421

数据库

软件详细设计阶段

  • 数据结构设计
  • 算法设计
  • 数据库的物理设计

image-20240930114109818


  • WITH CHECK OPTION
    • 主要与数据的完整性和视图的约束相关
  • WITH GRANT OPTION
    • 主要与权限的传递和管理相关

分布式数据库

  • 分片透明
    • 指用户或应用程序不需要知道逻辑上访问的表具体是怎么分块存储的
  • 复制透明
    • 采用复制技术的分布方法,用户不需要知道数据是复制到哪些节点,如何复制
  • 位置透明
    • 用户无须知道数据存放的物理位置,逻辑透明,即局部数据模型透明,是指用户或应用程序无须知道局部场地使用的是哪种数据模型

SCRUM MASTER职责

image-20240930114849604


image-20240930134358783

  • 商品关系的主键是商品号
  • 仓库关系的主键是(仓库号,商品号)
  • 显然,仓库关系存在冗余、修改操作的不一致,以及插入异常和删除异常

image-20240930135136999

  • 派生属性
    • 由其他属性经过运算得到的属性,因而派生属性产生冗余,通常不存储. 如age可以通过birth计算得到
  • 多值属性
    • 一个属性会同时取多个值, 而且这些值必须存储,如一个人可能有多个手机号码, 一个用户有多个收货地址

软件结构设计阶段


概要设计阶段(全局)

  • 软件系统总体结构设计,将系统分成模块
  • 确定每个模块的功能
  • 确定模块之间的调用关系
  • 确定模块之间的接口,即模块之间传递的信息
  • 评价模块结构的质量
  • 数据结构及数据库设计

软件详细设计阶段(细节)

  • 模块内数据结构进行设计
  • 对数据库进行物理设计
  • 对每个模块进行详细的算法设计
  • 代码设计、输入/输出设计、用户界面设计

螺旋模型

image-20241008195054869

螺旋模型强调通过多个迭代降低项目风险而不是专门为了快速交付

螺旋模型核心风险的评估和缓解


耦合

image-20241008195807811


语法分析、词法分析、语义分析、目标代码生成

  • 词法分析阶段处理的错误:非法字符单词拼写错误
  • 语法分析阶段处理的错误:标点符号错误表达式中缺少操作数括号不匹配等有关语言结构上的错误。
  • 静态语义分析阶段(即语义分析阶段)处理的错误:运算符与运算对象类型不合法等错误。
  • 目标代码生成(执行阶段)处理的错误:动态语义错误,包括陷入死循环变量取零时做除数引用数组元素下标越界等错误

以编译方式翻译C/C++源程序的过程中,类型检查在( )阶段处理。

A 词法分析

B 语义分析

C 语法分析

D 目标代码生成


image-20250505003746253