数据结构考试题答案(浙江科技学院)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

参考答案及评分标准

一、单项选择题(每题2分,共30分)

二、填空题(每空1分,共12分)

1、 集合、线性结构、树形结构、网状结构或图形结构 评分说明:答案顺序可互换

2、O(m*n)

3、2,4

4、 5

5、(908、897、512、653、503、170、87、61、275、462)评分说明:如果部分对可给半分

6、 ,2i+1

7、(1,3,4,5,2),(1,3,2,4,5) 评分说明:如果部分对可给半分

三、程序填空题(共3小题,每空3分,共18分) 评分说明:可根据情况给一半的分数

1. stack.top++, stack.s[stack.top]=x

2. return(t),t=t->rchild

3. i

,R[j--]=R[i]

四、应用题(共4小题,每题6分,共24分)

1. 后根遍历序列:FDBGHECA

评分说明:如果部分对可根据情况给出相应的分数 评分说明:如果部分对可根据情况给出相应的分数

A

B

C

D E

G

H F

⎣⎦2/i

3.初始为:178,512, 170,897, 653,426,154,509,782

第一趟(增量为5):178,154,170,782,653,426,512,509,897 第二趟(增量为3):178,154,170,512,509,426,782,653,897 第三趟(增量为1):154,170,178,426,509,512,653,782,897 评分说明:如果部分对可根据情况给出相应的分数

4、

评分说明:如果部分对可根据情况给出相应的分数

五、算法设计题(每题8分,共16分。)

1、typedef struct BiTNode {

TElemType data;

struct BiTNode *lchild, *rchild; // 左右孩子指针

} BiTNode, *BiTree;

int Depth (BiTree T )

{if ( !T )

depthval = 0;

else

{depthLeft = Depth( T->lchild ); 2分depthRight= Depth( T->rchild ); 2分depthval = 1 +(depthLeft> depthRight?depthLeft:depthRight); 2分

}

return depthval; 2分}

评分说明:如果与参考答案不一致,达到题目要求,参考评分标准给分。

2、typedef struct LNode{

int data;

struct LNode *next;

};

void MergeList(struct LNode *la,struct LNode *lb,struct LNode *lc)

{

struct LNode *L1,*L2,*L3;

L1=la->next;L2=lb->next;L3=lc;

la->next=NULL;lb->next=NULL; 2分

while(L1 && L2) 1分

{ if(L1->data<=L2->data)

{

L3->next=L1;

L3=L1;

L1=L1->next;

} 2分

else

{

L3->next=L2;

L3=L2;

L2=L2->next;

} 2分}

L3->next=L1?L1:L2; 1分

}

算法复杂度O(m+n)m:第一个表的长度;n:第二个表的长度

评分说明:如果与参考答案不一致,达到题目要求,参考评分标准给分。

相关文档
最新文档