22下半年下午题

声明:哔哩哔哩视频笔记

源地址

第一大题题目

题目

第一大题解答

第一小问

解答
根据0层数据流图来找,看数据流向和相应的处理模块匹配。并且这个第一问,肯定是能在说明中找到对应短语作为答案的。

第二小问

搞清楚具体存储数据的信息名字,可以在后面加上 一个 字, 就可以作为答案了。

解答

第三小问

数据流知识:
数据流

  1. 数据流的起点和终点必须有一个是加工,至少有一个是加工。
  2. 上下两个图要平衡,上下文数据流图系统交互具有的数据流,0层数据流图也要有对应的数据流。
  3. 每一个加工至少有一个输出数据流和输入数据流
  4. 数据守恒,说明和数据流图的描述一致,不会凭空出现和消失。
  5. 这一步需要细细的分析才行

解答

第四小问

这个题目跟着自己的感觉走

解答

第二大题题目

题目

第二大题解答

第一小问

像这个样子的实体是一个子实体,就是某个一般实体的特殊实体。

子实体
先在试卷上画一下结果,确认好再画到答题卡上。

题目

解答

第二小问

解答

第三小问

这一问不要想太多,切合题目结合实际,按着感觉走。

解答

第三大题,分值分别是4,8,3,题目

题目

第一小问

用例一般是动词加上名词

解答

第二小问,一分一个类名

解答

第三小问

设计模式选对1.5分,解释原因1.5分

策略设计模式

策略模式


策略模式适用性


解答

第四大题题目

题目
题目

大顶堆

大顶堆(Max Heap)是一种特殊的二叉堆(Binary Heap),它是一种用于实现优先队列的数据结构。大顶堆具有以下特性:

  1. 堆属性:在一个大顶堆中,对于每个父节点P,P的值大于或等于其子节点的值。这意味着堆的根节点始终包含最大的元素。

  2. 结构属性:大顶堆通常是一棵完全二叉树,这意味着除了最底层,其他层的节点都是满的,而在最底层,节点从左到右填充,不留空。

大顶堆通常用于实现一些算法和数据结构,如堆排序、Dijkstra算法、Prim算法等,这些算法需要在运行时高效地找到最大值或进行优先级处理。在大顶堆中,最大的元素总是位于根节点,因此可以快速找到并移除最大元素。

大顶堆可以通过插入和删除操作来维护其属性,确保堆的结构属性和堆属性一直得到满足。在插入元素时,通常会将新元素添加到堆的底部,然后逐级向上调整,以确保堆属性保持不变。在删除元素时,通常会删除根节点,并将堆的底部元素移到根的位置,然后逐级向下调整以保持堆属性。

小顶堆(Min Heap)与大顶堆相反,其中每个父节点的值都小于或等于其子节点的值。它们在解决不同类型的问题时都有广泛的应用。

第一小问,堆排序给我整懵逼了,算法有点难搞

解答

第二小问

堆排序的时间复杂度

堆排序的时间复杂度

解答

n个节点的二叉树的高度
时间复杂度计算

第三小问

两种作答形式皆可,但是推荐第一种画图。
解答
将第一个元素脱离,再调整成大顶堆后的数组为:

解答
但是这里,第一个元素只是逻辑上脱离,但是物理上仍然存储在数组之中,这里还是要将第一个元素写上。

解答
这一题可以在编译器运行代码测试一下。

第五大题题目,选做,需要填涂,默认小题号

题目

题目

第一小问

  1. 接口中的空找实现这个接口的类,寻找具体的方法。
  2. 相应的修饰符和参数写清楚写对,一般 修饰符最好不要省略。
  3. 构造方法按照方法的参数来传参。

解答

对于冗余的修饰符,只要不会使程序报错,一般会给分,但是既然是冗余的,不写当然也可以。
冗余修饰符

第六大题

因为我主要学习的是Java,这里就是题目和答案

题目
题目

解答

解答

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值