搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友wzhuqi 发布时间:2022-01-06
[主观题]

对给定关键字序号j(1<j<n),要求在无序记录A[1..n]中找到关键字从小到大排在第j位上的记录,写一个

对给定关键字序号j(1<j<n),要求在无序记录A[1..n]中找到关键字从小到大排在第j位上的记录,写一个算法利用快速排序的划分思想实现上述查找(要求用最少的时间和最少的空间)。例如:给定无序关键字{7,5,1,6,2,8,9,3),当j=4时,找到的关键字应是5。【中科院研究生院2003十二(15分)】【武汉理工大学2002四、3(35/3分)】

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“对给定关键字序号j(1<j<n),要求在无序记录A[1..n]中找到关键字从小到大排在第j位上的记录,写一个”相关的问题
第1题
给定n×m矩阵A[a..b,c..d],并设A[i,j]≤A[i,j+1](0≤i≤b,c≤j≤d一1)和A[i,j]≤A[i+1,j](0≤i≤b—1,e≤j≤d

给定n×m矩阵A[a..b,c..d],并设A[i,j]≤A[i,j+1](0≤i≤b,c≤j≤d一1)和A[i,j]≤A[i+1,j](0≤i≤b—1,e≤j≤d)。设计一算法判定x的值是否在A中,要求时间复杂度为D(m+n)。

点击查看答案
第2题
给定结点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典顺序进行排列,采用不同方法,其最终

给定结点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典顺序进行排列,采用不同方法,其最终结果相同,但中间结果是不同的。

Shell排序的第一趟扫描(步长为5)结果应为(1)。

冒泡排序(大数下沉)的第一趟冒泡的效果是(2)。

快速排序的第一次扫描结果是(3)。

二路归并排序的第一趟结果是(4)。

若以层次序列来建立对应的完全二叉树后,采用筛选法建堆,其第一趟建的堆是(5)。

A.(B, F, G, J, A, D, I, E, H, C)

B.(B, F, G, J, A, E, D, I, C, H)

C.(A, B, D, C, E, F, I, J, G, H)

D.(C, B, D, A, E, F, I, G, J, H)

点击查看答案
第3题
给定节点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典顺序进行排列。采用不同方法,其最终

给定节点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典顺序进行排列。采用不同方法,其最终结果相同,但中间结果是不同的。Shell排序的第一趟扫描(步长为5)结果应为(72)。冒泡排序(大数下沉)的第一趟起泡的效果是(73)。快速排序的第一趟结果是(74)。二路归并排序的第一趟结果是(75)。

A.(B, F, G, J, A, D, I, E, H, C)

B.(B, F, G, J, A, E, D, I, C, H)

C.(A, B, D, C, E, E, I, J, G, H)

D.(C, B, D, A, E, F, I, G, J, H)

点击查看答案
第4题
证明:设uj是有向网络G中自点1到点j的最短有向路的长度,且对所有的j=2,3,...,n,uj为有
限值,若网络G中的点能编成如下的序号2,3,...,n,使得若i<j,有ui≤uj且wji≥0,但等号不同时成立或者ui>uj且wji=+∞,即(j,i)∉A,则方程(6.1)可化简为方程(6.2)。

点击查看答案
第5题
【Ex-10-3】(鸡尾酒排序)修改冒泡排序算法,在正反两个方...

【Ex-10-3】(鸡尾酒排序)修改冒泡排序算法,在正反两个方向交替进行扫描,即第一趟把关键字最大的元素放到序列的最后,第二趟把关键字最小的元素放到序列的最前面。如此反复进行。请在空白处填入正确的语句。 typedef int ElemType; void shaker_Sort(________①_______, int n) { int low = 1, high = n - 1, i, j; int exchange; ElemType w; while(_______②________) { ________③_________; for(i = low; i < high; i++) if(A[i] > A[i + 1]) { w = A[i]; A[i] = A[i + 1]; ________④________; j = i; } high = j; for(i = high; i > low; i--) if(A[i - 1] > A[i]) { w = A[i - 1]; A[i - 1] = A[i]; A[i] = w; j = i; } ________⑤________; } }

点击查看答案
第6题
给定以下两个算法: 算法A: for(int i = 0; i < N; i++) for(int j = 0; j< N; j++) { S; }

给定以下两个算法: 算法A: for(int i = 0; i < N; i++) for(int j = 0; j< N; j++) { S; } 算法B: for(int i = 0; i < N; i++) for(int j = i; j< N; j++) { S; } 其中N是一个比较大的自然数,S是有若干基本语句组成的程序段。 1)在相同的计算机上,算法A比算法B运行速度慢? 2)算法A的时间复杂度比算法B要高? 请判断以上两个命题是否正确?并说明理由。

点击查看答案
第7题
问题描述:试设计一个用优先队列式分支限界法搜索排列空间树的函数,其参数包括结点可行性判定
雨数和上界的数等必要的函数,并将此函数用于解批处理作业调度问题.给定n个作业的集合问题描述:试设计一个用优先队列式分支限界法搜索排列空间树的函数,其参数包括结点可行性判定雨数和上界的.每个作业Ji都有2项任务分别在2台机器上完成.每个作业必须先由机器1处理,再由机器2处理.作业Ji需要机器j的处理时间为tij(=1,2,...,n;j=1,2).对于一个确定的作业调度,设Fij是作业i在机器j上完成处理的时间.所有作业在机器2上完成处理的时间和问题描述:试设计一个用优先队列式分支限界法搜索排列空间树的函数,其参数包括结点可行性判定雨数和上界的称为该作业调度的完成时间和.

批处理作业调度问题要求对于给定的n个作业,制定最佳作业调度方案,使其完成时间和达到最小.

算法设计:对于给定的n个作业,计算最佳作业调度方案.

数据输入:由文件input.txt提供输入数据.文件第1行有1个正整数n,表示作业数.接下来的n行中,每行有2个正整数i和j,分别表示在机器1和机器2上完成该作业所需的处理时间.

结果输出:将最佳作业调度方案及其完成时间和输出到文件output.txt.文件的第1行是完成时间和,第2行是最佳作业调度方案.

问题描述:试设计一个用优先队列式分支限界法搜索排列空间树的函数,其参数包括结点可行性判定雨数和上界的

点击查看答案
第8题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 [说明] HufTman树又称最优二叉树,

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

[说明]

HufTman树又称最优二叉树,是一类带权路径长度最短的树,在编码中应用比较广泛。

构造最优二叉树的Huffman算法如下:

①根据给定的n各权值{W1,w2,…,wn)构成n棵二叉树的集合F={T1,T2,…,Tn},其中每棵树Ti中只有一个带权为wi的根节点,其左右子树均空。

②在F中选取两棵根节点的权值较小的树作为左右子树,构造一棵新的二叉树,置新构造二叉树的根节点的权值为其左右予树根节点的权值之和。

③从F中删除这两棵树,同时将新得到的二叉树加入到F中。

重复②③,直到F中只剩一棵树为止。

函数中使用的预定义符号如下:

#define INT MAX 10000

#define ENCODING LENGTH 1000

typedef enum(none,left_child,right_child) Which;

/*标记是左孩子还足右孩子*/

typedef char Elemtype;

typedef struct TNode{//Huffman树节点

Elemtype letter;

int

weight; //权值

int parent; //父节点

Which sigh;

char *code; //节点对应编码

}HTNode,*HuffmanTree;

int n;

char coding[50];//储存代码

[函数]

void Select(HuffmanTree HT,int end,int *sl,int *s2)

/*在0~END之间,找出最小和次小的两个节点序号,返吲S1、S2*/

{

int i;

int min 1=INT_MAX;

int min 2=INT_MAX;

for(i=0;i<=end;i++){/*找最小的节点序号*/

if(((1) )&&(HT[i].weight<minl)){

*s1=i;

min 1=HT[i].weight;

}

}

for(i=0;i<=end;i++){/*找次小节点的序号*/

if((HT[i].parent==0)&&((2) )

&&(min 2>HT[i].weight)){

*s2=i;

min 2=HT[i].weight;

}

}

}

void HuffmanTreeCreat(HuffmanTree&HT)/*建立HUFFMAN树*/

{

int i;

int m=2*n-1;

int s1,s2;

for(i=n;i<m;i++){

Select((3) );

HT[s1].parent=i;

HT[s2].parent=i;

HT[s1].sigh=left child;

HT[s2].sigh=right child;

HT[i].weight=(4);

}

}

void HuffmanTreeEncoding(char sen[],HuffmanTree HT)

{ /*将句子进行编码*/

int i=0;

int j;

while(sen[i] !='\0'){

for(j=0;j<n;j++){

if(HT[j].letter==sen[i])(/*字母吻合则用代码取代*/

strcat(coding, (5) );

break;

}

}

i++;

if (Sen [1]==32) i++;

}

printf("\n%s",coding);

}

(1)

点击查看答案
第9题
要打印出50个在-100~100之间不同的随机整数,并找出第几个是最大数。给定的程序不完整,将程序补充
完整。 Option Base 1 Private Sub Command1_Click() Dim b() Randomize 【 】 Do x=Rnd If x>0.5 Then y=1 Else y=-1 t=y*Int(Rnd*100)+1 【 】 Do While k<j If t <> b(k)Then k = k + 1 Else Exit Do End If Loop If k=j Then ReDim Preserve b(k) b(k)=t Print b(k); j=j+1 End If Loop Until j>50 Print 【 】 Max=b(1) For n=2 To 50 If b(n)>Max Then 【 】 p = n End If Next n Print "最大数是:";Max Print "位置在第";p;"个" End Sub

点击查看答案
第10题
给定n行n列的整数矩阵A,其中每行的整数从左到右升序排列,每列的整数从上到下降序排列。即 i, j ∈
{1, ..., n-1} 时,矩阵元素满足以下关系:A[i, j] < A[i, j + 1] 和 A[i, j] > A[i + 1, j]。给定一个整数x,试问矩阵A 是否有整数x。 例如:给定以下矩阵A,如果 x = 5,返回true;如果 x = 10,返回false。 A = 7 8 9 3 4 6 1 2 5 请设计一个复杂度为O(n)的搜索算法。

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

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

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

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

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

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

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

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

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP