Free考研资料 - 免费考研论坛

 找回密码
 注册
打印 上一主题 下一主题

由清华大学1994年一道试题想到的(转载)

[复制链接]
跳转到指定楼层
楼主
地理初学者 发表于 06-11-27 14:10:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
算法填充题:题目

刚开始很难想到要用递归,后来仔细想了一下,确实还只能用递归.原因如下:

  在开始时,相信大家(包括本人 )在刚看到题目的时候会迫不及待地将while后面填上pa&&pb以表示结束控制符,然后将最后一句填上return true表示判断成功,else语句后面填上return false在匹配不成功时强制退出(其实这样一写就已经错了,因为匹配不成功指针也要向后移动的),在then语句后面填上pa=pa->next;pb=pb->next语句,可是这样一来第一个空格似乎无内容可填了,此时陷入了僵局

考虑题型中没有任何多余的变量,于是考虑到这个是否是递归的基准情形,只能这样考虑,否则一条语句放在如此的位置不能有其他作用.题目没有定义新的变量,而pa,pb均已经初始化成功,所以只能是递归基准情形.所以第一个空格内填入if pa==NULL then return true;后面分别填入return (inclusion(pa,pb));  pb=pb->next;  return false;

另外,函数体名"(inclusion)"也有"此地无银"的味道,暗示了本题是用递归解答的.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
沙发
hhf5301 发表于 06-12-1 21:45:18 | 只看该作者
板凳
icesky1981 发表于 06-12-3 11:36:39 | 只看该作者
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|Free考研资料 ( 苏ICP备05011575号 )

GMT+8, 25-1-10 20:53 , Processed in 1.422461 second(s), 12 queries , Gzip On, Xcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表