数据结构试卷2009a答案.pdfVIP

  • 8
  • 0
  • 约1.04万字
  • 约 10页
  • 2017-04-26 发布于浙江
  • 举报
数据结构试卷2009a答案

哈尔滨工业大学(威海)2008/2009 学年春季学期 数据结构 试题卷(A)答案 一、单择题(每小题 2 分,共 20 分) 题号 1 2 3 4 5 6 7 8 9 10 答案 C C C A D D C A B D 二、填空题(每小题 2 分,共 20 分) 题号 答案 题号 答案 1 0,1,1,2,1,1,2,3,4,3 6 5 v1v2v3v5v4v6v7 2 ABDEGCFH 7 v1v2v6v3v4v7v5 3 2n-1 8 循环 4 q-next=q-next-next 9 51 5 2k-1 10 3 三、应用题(共 60 分) 1.有如下递归函数 fact(n),分析其时间复杂度。(本题 4 分) fact(int n) {if (n=1) 教研室主任签字: 第 1 页 共 10 页 return 1; else return(n*fact(n-1)); } 答: 设求 n 的阶乘需运行 f(n)次。 f(n)=f(n-1)+c f(n-1)=f(n-2)+c …………. f(3)=f(2)+c f(2)=f(1)+c f(1)=2; f(n)=2+(n-1)c 时间复杂度为 O(n) 2.写一算法,实现单链表的逆置,不需要辅助空间。(用 C 或 C++ 描述) (本题 6 分) (1)存储结构(1 分) (2)算法(5 分) 答: (带头结点的单链表) struct celltype { elementtype element; celltype *next; }; typedef celltype *LIST; typedef celltype *position; void reverse(LIST L) {position p,q; p=L-next-next; L-next-next=null; while(p!=NULL) {q=p-next; p-next=L-next; L-next=p; p=q; } } 教研室主任签字: 第 2 页 共 10 页 3.已知一组关键字为(10, 24, 32, 17, 31, 30, 46, 47, 40,

文档评论(0)

1亿VIP精品文档

相关文档