当前位置:首页计算机类软件水平考试初级程序员->阅读以下说明和流程图,填补流程图中空缺,将解答填入答题纸对应

阅读以下说明和流程图,填补流程图中空缺,将解答填入答题纸对应栏内。

[说明]

两个包含有限个元素非空集合A、B相似度定义为|A∩B|/|A∪B|,即它们交集大小(元素个数)与并集大小之比。

以下流程图计算两个非空整数集合(以数组表示)交集和并集,并计算其相似度。已知整数组A[1:m]和B[1:n]分别存储了集合A和B元素(每个集合中包含元素各不相同),其交集存放于数组C[1:s],并集存放于数组D[1:t],集合A和B相似度存放于SIM。

例如,假设A={1,2,3,4},B={1,4,5,6},则C={1,4),D={1,2,3,4,5,6},A与B相似度SIM=1/3。

[流程图]

初级程序员,章节练习,基础复习,初级程序员练习

答案:
本题解析:

s

t

C[s]

D[t]

s/t

【解析】

本题考查程序处理流程图设计能力。

首先我们来理解两个有限集合相似度含义。两个包含有限个元素非空集合A、B相似度定义为它们交集大小(元素个数)与并集大小之比。如果两集合完全相等,则相似度必然为1(100%);如果两集合完全不同(没有公共元素),则相似度必然为0;如果集合A中有一半元素就是集合B全部元素,而另一半元素不属于集合B,则这两个集合相似度为0.5(50%)。因此,这个定义符合人们常理性认识。

在大数据应用中,经常要将很多有限集进行分类。例如,每天都有大量新闻稿。为了方便用户检索,需要将新闻稿分类。用什么标准来分类呢?每一篇新闻稿可以用其中所有关键词来表征。这些关键词集合称为这篇新闻稿特征向量。两篇新闻稿是否属于同一类,依赖于它们关键词集合是否具有较高相似度(公共关键词个数除以总关键词个数)。搜索引擎可以将相似度超过一定水平新闻稿作为同一类。从而,可以将每天新闻稿进行分类,就可以按用户需要将某些类新闻稿推送给相关用户。

本题中集合用整数组表示,因此,需要规定同一数组中元素各不相同(集合中元素是各不相同)。题中,整数组A[1:m]和B[1:n]分别存储了集合A和B元素。流程图目标是将A、B中相同元素存放入数组C[1:s](共s个元素),并将A、B中所有元素(相同元素只取一次)存放入数组D[1:t](共t个元素),最后再计算集合A和B相似度s/t。

流程图中第一步显然是将数组A中全部元素放入数组D中。随后,只需要对数组B中每个元素进行判断,凡与数组A中某个元素相同时,就将其存入数组C;否则就续存入数组D(注意,数组D中已有m个元素)。这需要对j(遍历数组B)与i(遍历数组A)进行两重循环。判断框B[j]=A[i]成立时,B[j]应存入数组C;否则应继续i循环,直到循环结束仍没有相等情况出现时,就应将B[i]存入数组D。存入数组C之前,需要将其下标s增1;存入数组D之前,需要将其下标t增1。因此,初始时,应当给i赋0,使数组C存数从C[1]开始。从而,(1)处应填s,(3)处应填C[s]。而数组D是在已有m个元素后续存,所以,初始时,数组D下标t应当是m,续存是从D[m+1]开始。因此,(2)处应填t,(4)处应填D[t]。

两重循环结束后,就要计算相似度s/t,将其赋予SIM,因此(5)处应填s/t。

更新时间:2022-07-26 18:28
纠错

你可能感兴趣的试题

单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.V(S2)和P(S4)
  • B.P(S2)和V(S4)
  • C.P(S2)和P(S4)
  • D.V(S2)和V(S4)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.V(S1)P(S2)和V(S3)
  • B.P(S1)V(S2)和V(S3)
  • C.V(S1)V(S2)和V(S3)
  • D.P(S1)P(S2)和V(S3)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S4)和V(S4)V(S5)
  • B.V(S5)和P(S4)P(S5)
  • C.V(S3)和V(S4)V(S5)
  • D.P(S3)和P(S4)V(P5)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S3)和V(S4)V(S5)
  • B.V(S3)和P(S4)P(S5)
  • C.P(S3)和P(S4)P(S5)
  • D.V(S3)和V(S4)V(S5)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.P(S2)和P(S4)
  • B.P(S2)和V(S4)
  • C.V(S2)和P(S4)
  • D.V(S2)和V(S4)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.V(S1)、P(S1)和V(S2)V(S3)
  • B.P(S1)、V (S1)和V(S2)V(S3)
  • C.V(S1)、V(S2)和P(S1)V(S3)
  • D.P(S1)、V(S2)和V(S1)V(S3)
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.序列图
  • B.状态图
  • C.通信图
  • D.活动图
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.合并分叉
  • B.分支
  • C.合并汇合
  • D.流
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.产甲2套,乙3套
  • B.生产甲1套,乙4套
  • C.生产甲3套,乙4套
  • D.生产甲4套,乙2套
查看答案
单选题

高级系统分析师,专项练习,软件水平考试《高级系统分析师》押题

  • A.见图A
  • B.见图B
  • C.见图C
  • D.见图D
查看答案