算法导论习题4-5:芯片检测

2019.11.14更新: 修正了方法1里的一个错误,增加了方法3。

习题4-5 3rd edition (4-6 2nd edition)

Diogenes 教授有n个被认为是完全相同的VLSI芯片,原则上它们是可以互相测试的。教授的测试装置一次可测试二片,当该装置中放有两片芯片时,每一片就对另一片作测试并报告其好坏。一个好的芯片总能够正确的报告另一片的好坏,但一个坏的芯片的结果就是不可靠的。这样,每次的测试的四种可能结果如下:

A芯片报告       B芯片报告                结论 
-------------------------------------------------------- 
B是好的          A是好的            都是好的,或都是坏的 
B是好的          A是坏的            至少一片是坏的 
B是坏的          A是好的            至少一片是坏的 
B是坏的          A是坏的            至少一片是坏的 

a)证明若不少于 n/2 的芯片是坏的,在这种成对测试方式下,使用任何策略都不能确定哪个芯片是好的。
b)假设有多于 n/2 的芯片是好的,考虑从 n 片中找出一片好芯片的问题。证明 n/2 对测试就足以使问题的规模降至近原来的一半。 
c)假设有多于 n/2 的芯片是好的,证明好的芯片可用 O(n) 对测试找出.给出并解答表达测试次数的递归式。

第一问证明如下:将芯片分为3组,(a)好的(b)数量和a组相同的坏的(c)剩下的坏的。若每组都坚持认为本组是好的而其它组的都是坏的,则a组和b组无法区分。

可以通过如下三种方法找出一

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值