@数据结构复习题。.docVIP

  • 8
  • 0
  • 约2.57万字
  • 约 27页
  • 2019-12-03 发布于湖北
  • 举报
〖线性表〗 解答题2.阅读下面算法,指出其中所有的错误。(5分) FUNC length(head:linklist):integer; {求以head为头指针的不带头结点的循环单链表的长度} f:=head; WHILE f head DO [n:=n+1;p:=p↑.1ink]; RETURN(n) ENDPF;{length} 解答:(1)n未初始化为0(1分) (2)循环条件不对,应为WHILE f↑.1inkhead DO (2分) (3)循环变量f的值应在循环体内改变,即p应改为f (1分) (4)未处理空表的情形。(1分) 正确的算法是: FUNC length(head:linklist):integer; {求以head为头指针的不带头结点的循环单链表的长度} n:=0 IF headNIL THEN [ f:=head↑.link; n:=1; WHILE f head DO[n:=n+l; f:=f↑.link] ]; RETURN(n) ENDF;{length} 解答题4、在线形表的顺序和链式存储结构下,试分析下表各种基本运算时间复杂度,并填入相应的表格中。(5分) 运算 求表长 取元素 取前趋 取后继 插入 顺序存储结构 O(1) O(1) O(1) O(1) O(n) 链式存储结构

文档评论(0)

1亿VIP精品文档

相关文档