重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 计算机类考试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

阅读以下说明和图,填补流程图中的空缺。【说明】 在一条农村公路的一边稀疏地分布着房子,其分布如图

阅读以下说明和图,填补流程图中的空缺。

【说明】

在一条农村公路的一边稀疏地分布着房子,其分布如图10-5所示。某电信公司需要在某些位置放置蜂窝电话基站,由于基站的覆盖范围是6公里,因此必须使得每栋房子到某个基站的直线距离不超过6公里。为简化问题,假设所有房子在同一直线上,并且基站沿该直线放置。现采用贪心策略实现用尽可能少的基站覆盖所有的房子。

阅读以下说明和图,填补流程图中的空缺。【说明】 在一条农村公路的一边稀疏地分布着房子,其分布如图阅读

实现贪心算法的流程如图10-6所示,请填充其中空白并计算该算法的时间复杂度,其中:

1.d[i](1≤i≤N)表示第i个房子到公路A端的距离,N表示房子的总数,房子的编号按照房子到公路A端的距离从小到大进行编号。

2.s[k]表示第k(k≥1)个基站到公路A端的距离,算法结束后k的值为基站的总数。

阅读以下说明和图,填补流程图中的空缺。【说明】 在一条农村公路的一边稀疏地分布着房子,其分布如图阅读

该算法的时间复杂度为(5)。

查看答案
更多“阅读以下说明和图,填补流程图中的空缺。【说明】 在一条农村公路的一边稀疏地分布着房子,其分布如图”相关的问题

第1题

识别关联的多重度是面向对象建模过程中的一个重要步骤。根据[说明]中给出的描述,完成图10-4中的(1

)~(6)。

点击查看答案

第2题

阅读下列C程序和程序说明,将应填入(n)处的字句写在对应栏内。 【说明】本程序从正文文件text.in中读

阅读下列C程序和程序说明,将应填入(n)处的字句写在对应栏内。

【说明】本程序从正文文件text.in中读入一篇英文短文,统计该短文中不同单词及出现次数,并按词典编辑顺序将单词及出现次数输出到正文文件word.out中。

程序用一棵有序二叉树存储这些单词及其出现的次数,边读入边建立,然后中序遍历该二叉树,将遍历经过的二叉树上的结点的内容输出。

include <stdio.h>

include <malloc.h>

include <ctype.h>

include <string.h>

define INF "text.in"

define OUTF "wotd.out"

typedef struct treenode{

char *word;

int count;

struct treenode *left,*right;

}BNODE

int getword (FILE *fpt,char *word)

{ char c;

c=fgetc (fpt);

if ( c=EOF)

return 0;

while(!(tolower(c)>='a' && tolower(c)<='z'))

{ c=fgetc (fpt);

if ( c==EOF)

return 0;

} /*跳过单词间的所有非字母字符*/

while (tolower (c)>='a' && tolower (c)<='z')

{ *word++=c;

c=fgetc (fpt);

}

*word='\0';

return 1;

}

void binary_tree(BNODE **t,char *word)

{ BNODE *ptr,*p;int compres;

P=NULL; (1);

while (ptr) /*寻找插入位置*/

{ compres=strcmp (word, (2) );/*保存当前比较结果*/

if (!compres)

{ (3);return;}

else

{ (4);

ptr=compres>0? ptr->right:ptr->left;

}

}

ptr= (BNODE*) malloc (sizeof (BNODE)) ;

ptr->left = ptr->right = NULL;

ptr->word= (char*) malloc (strlen (word) +1) ;

strcpy (ptr->word, word);

ptr->count - 1;

if (p==NULL)

(5);

else if (compres > 0)

p->right = ptr;

else

p->left = ptr;

}

void midorder (FILE **fpt, BNODE *t)

{ if (t==NULL)

return;

midorder (fpt, t->left);

fprintf (fpt, "%s %d\n", t->word, t->count)

midorder (fpt, t->right);

}

void main()

{ FILE *fpt; char word[40];

BNODE *root=NULL;

if ((fpt=fopen (INF,"r")) ==NULL)

{ printf ("Can't open file %s\n", INF )

return;

}

while (getword (fpt, word) ==1 )

binary_tree (&root, word );

fclose (fpt);

fpt = fopen (OUTF, "w");

if (fpt==NULL)

{ printf ("Can't open file %s\n", OUTF)

return;

}

midorder (fpt, root);

fclose(fpt);

}

点击查看答案

第3题

阅读以下说明和流程图,回答问题1至问题3,将答案写在对应栏内。【说明】 流程图描述了某高校图书订购

阅读以下说明和流程图,回答问题1至问题3,将答案写在对应栏内。

【说明】

流程图描述了某高校图书订购与编目系统的处理流程。全校的图书典藏在校图书馆和各系的资料室中。学校每年分若干批向出版单位订购图书,同一批订购的图书将陆续邮寄到学校。出版单位在寄出图书的同时附上到书清单和发票,发票上仅给出一份到书清单中书的总册数和总金额。学校收到图书和发票后,先参照订购单验收,然后进行编目,并把有关信息存放在书种文件、书名文件、作者文件和复本文件中,以供读者检索。

书种文件记录了每种书的有关信息。所谓一种书是指同一作者、同一书名、同一出版单位和同一出版年份出版的书。例如,2004年张明在科技出版社出版了《软件工程》(印数8000册)和《数据库基础》(印数5000册),则张明在2004年出版了两种书。在全校的藏书中,如果一种书只有一册,则该书的信息存放在书种文件中:如果一种书有多册,则其中一册书的信息存放在书种文件中,其余的书作为复本将信息存放在复本文件中。复本文件的结构与书种文件的结构相同,每种书都有一个书号,书号唯一地标识了一种书。在书库中,每册书有一个登录号,登录号唯一地标识了一册书。此外,为了图书检索的方便,将图书按学科分类,分类号用来标识不同的学科领域。

各类单据和文件的结构如下所示。

订购单:订购批号、书名、作者名、出版单位、出版年份、单价、订购册数、订购部门代码、订购日期。

到书清单:订购批号、书名、作者名、出版单位、出版年份、单价、册数。

发票:订购批号、发票号、总册数、总金额。

书种文件:分类号、登录号、书名代码、作者代码、出版单位、出版年份、单价、复本标志、典藏部门代码、借出标志。

其中,复本标志用来指示该种书在书库中有没有复本:对于书名相同的若干种书,书名代码是相同的。

书名文件:书名代码、书名。

作者文件:作者代码、作者名。

【问题1】

指出验收文件至少应由哪些数据项组成。

【问题2】

由于处理5和处理6的分类,可能导致分类后的文件中一张发票无法找到与它对应的那些书,从而当一组发票的金额之和与一组到书清单中的书价之和不等时,无法知道是哪一张发票和哪一份清单不一致。如果仍使用原流程图,那么当到书清单文件的结构做何改动后,能找出不一致的发票和相应的书目。

【问题3】

若在书种文件中增加数据项“书号”,则如何重新设计复本文件的结构,使数据冗余最小。

点击查看答案

第4题

【说明】 设有关于银行借贷管理系统的E-R图。图中矩形表示实体,圆表示属性,双圆表示关键字属性,菱形

【说明】

设有关于银行借贷管理系统的E-R图。图中矩形表示实体,圆表示属性,双圆表示关键字属性,菱形表示实体间的联系。为了答题的方便,图中的实体和属性同时给出了中英文说明,回答问题时只需写出英文名即可。

根据E-R图中给出的词汇,按照“有关模式名(属性1,属性2,…)”的格式,将此E-R图转换为关系模式,并指出每个关系模式中的主码和外码,其中模式名根据需要取实体名或联系名。要求其中的关系模式至少属于第三范式。

点击查看答案

第5题

根据系统功能和数据流图填充下列数据字典条目中的(1)和(2): 试题得分表二准考证号+{课程名+成绩}

根据系统功能和数据流图填充下列数据字典条目中的(1)和(2):

试题得分表二准考证号+{课程名+成绩}

考生名册=报名号+准考证号+姓名+通信地址+出生年份+文化程度+职业

考生通知单=(1)

报名表=(2)

点击查看答案

第6题

请根据算法的C代码,分析此算法效率。

点击查看答案

第7题

阅读下列函数说明和C代码,回答下面问题。[说明] 冒泡排序算法的基本思想是:对于无序序列(假设扫描

阅读下列函数说明和C代码,回答下面问题。

[说明]

冒泡排序算法的基本思想是:对于无序序列(假设扫描方向为从前向后,进行升序排列),两两比较相邻数据,若反序则交换,直到没有反序为止。一般情况下,整个冒泡排序需要进行众(1≤k≤n)趟冒泡操作,冒泡排序的结束条件是在某一趟排序过程中没有进行数据交换。若数据初态为正序时,只需1趟扫描,而数据初态为反序时,需进行n-1趟扫描。在冒泡排序中,一趟扫描有可能无数据交换,也有可能有一次或多次数据交换,在传统的冒泡排序算法及近年的一些改进的算法中[2,3],只记录一趟扫描有无数据交换的信息,对数据交换发生的位置信息则不予处理。为了充分利用这一信息,可以在一趟全局扫描中,对每一反序数据对进行局部冒泡排序处理,称之为局部冒泡排序。

局部冒泡排序的基本思想是:对于N个待排序数据组成的序列,在一趟从前向后扫描待排数据序列时,两两比较相邻数据,若反序则对后一个数据作一趟前向的局部冒泡排序,即用冒泡的排序方法把反序对的后一个数据向前排到适合的位置。扫描第—对数据对,若反序,对第2个数据向前冒泡,使前两个数据成为,有序序列;扫描第二对数据对,若反序,对第3个数据向前冒泡,使得前3个数据变成有序序列;……;扫描第i对数据对时,其前i个数据已成有序序列,若第i对数据对反序,则对第i+1个数据向前冒泡,使前i+1个数据成有序序列;……;依次类推,直至处理完第n-1对数据对。当扫描完第n-1对数据对后,N个待排序数据已成了有序序列,此时排序算法结束。该算法只对待排序列作局部的冒泡处理,局部冒泡算法的

名称由此得来。

以下为C语言设计的实现局部冒泡排序策略的算法,根据说明及算法代码回答问题1和问题2。

[变量说明]

define N=100 //排序的数据量

typedef struct{ //排序结点

int key;

info datatype;

......

}node;

node SortData[N]; //待排序的数据组

node类型为待排序的记录(或称结点)。数组SortData[]为待排序记录的全体称为一个文件。key是作为排序依据的字段,称为排序码。datatype是与具体问题有关的数据类型。下面是用C语言实现的排序函数,参数R[]为待排序数组,n是待排序数组的维数,Finish为完成标志。

[算法代码]

void Part-BubbleSort (node R[], int n)

{

int=0 ; //定义向前局部冒泡排序的循环变量

//暂时结点,存放交换数据

node tempnode;

for (int i=0;i<n-1;i++) ;

if (R[i].key>R[i+1].key)

{

(1)

while ( (2) )

{

tempnode=R[j] ;

(3)

R[j-1]=tempnode ;

Finish=false ;

(4)

} // end while

} // end if

} // end for

} // end function

阅读下列函数说明和C代码,将应填入(n)处的字句写在的对应栏内。

点击查看答案

第8题

请指出图13-9中(1)~(4)处的重复度分别为多少?

点击查看答案

第9题

阅读下列说明及图13-8和图13-9,回答问题,将解答填入对应栏内。【说明】 某电话公司决定开发一个管理

阅读下列说明及图13-8和图13-9,回答问题,将解答填入对应栏内。

【说明】

某电话公司决定开发一个管理所有客户信息的交互式网络系统。系统功能如下。

(1)浏览客户信息:任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。

(2)登录:电话公司授予每个客户一个帐号。拥有授权帐号的客户,可以使用系统提供的页面设置个人密码,并使用该帐号和密码向系统注册。

(3)修改个人信息:客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。

(4)删除客户信息:只有公司的管理人员才能删除不再接受公司服务的客户的信息。系统采用面向对象方法进行开发,在开发过程中认定出的类见表13-3。

在需求分析阶段,采用UML的用例图(use case diagram)描述系统功能需求,如图 13-8所示。请指出图中的A、B、C和D分别是哪个用例?

点击查看答案

第10题

阅读以下说明和C代码(代码13-4),将应填入(n)处的字句写在对应栏内。 【说明】在一公文处理系统中,开

阅读以下说明和C代码(代码13-4),将应填入(n)处的字句写在对应栏内。

【说明】

在一公文处理系统中,开发者定义了一个公文结构OfficeDoc,其中定义了公文应该具有的属性。当公文的内容或状态发生变化时,与之相关联的DocExplorer结构的值都需要发生改变。一个OfficeDoc结构能够关联一组DocExplorer结构。当OfficeDoc结构的内容或状态发生变化时,所有与之相关联的DocExplorer结构都将被更新,这种应用被称为观察者模式。以下代码采用C语言实现,能够正确编译通过。

【代码13-4】

include<stdio.h>

define OBS_MAXNUM 20 /*一个OfficeDoc变量最多能够关联的DocExplorer变量的个数*/

typedef void( (1) )(struc OffieeDoc*, struct DoeExplorer*)I;

struct DocExplorer{

func update;/*DocExplorer结构采用的更新函数*/

/*其它的结构字段省略*/

};

struet OffieeDoc{

(2) myObs[OBS_MAXNUM];

/*存储所有与OfficeDoc相关联的DocExplorer结构指针*/

int index;/*与OffieeDoc结构变量相关联的DoeExplorer结构变量的个数*/

};

void attaeh(struct OfficeDoc*doc, struct DocExplorer*ob){

/*关联Observer结构ob与OffieeDoe结构doe*/

int loop=0;

if(doc->index>=OBS_MAXNUM||ob==NULL)return;

for(loop=0, loop<doc->index; loop++)

if(doc->myObs[loop]==ob)return;

doc->myObs[doe->index]=ob;

doc->index++;

}

void detaeh(struct OfficeDoc*doc, struct DocExplorer*ob){

/*解除doc结构与ob结构间的关联*/

int loop;

if(ob==NULL)return;

for(loop=0;loop<doc->index; loop++){

if(doe->myObs[loop]==ob){

if(loop<=doc->index-2)

doc->myObs[loop]=doc->myObs[(3)];

doc->myObs[doc->index-1]=NULL;

doc->index——;

breack;

}

}

}

void updatel(struct OfficeDoe*doe, struct DoeExplorer *ob){

/*更新ob结构的值,更新代码省略*/

} void update2(struct OffieeDoc*doc,struet DocExplorer *ob){

/*更新ob结构的值,更新代码省略*/

}

void notifyObs(struct OfficeDoc* doc){

/*当doc结构的值发生变化时,通知与之关联的所有DocExplorer结构变量*/

int loop;

for(loop=0; loop<doc->index; loop++){

(doc->myObs[loop])->update((4));

}

}

void main(){

struct OfficeDoc doc; /*定义一了OfficeDoe变量*/

struct DocExplorer explorer1, explorer2; /*定义两个DocExplorer变量*/

/*初始化与OfficeDoc变量相关的DocExplorer变量个数为0*/

doc.index=0;

explorer1.update=update1; /*设置explorer1变量的更新函数*/

explorer2. update=update2; /*设置explorer2变量的更新函数*/

attach(&doc, &explorer1); /*关联explorer1与doc对象*/

attach(&doc, &explorer2); /*关联explorer2与doc对象*/

/*其它代码省略*/

(5); /*通知与OfficeDoe相关的所有DoeExploer变量*/

return;

}

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案