计算思维 | 您所在的位置:网站首页 › 计算思维中的求解思维有哪些 › 计算思维 |
目录 1.0问题引入 2. 0问题解决 2.1简单的情况: 2.1.1分析 2.1.2 两个角度 从小白鼠的角度 综合小白鼠角度 从水瓶的角度 深层理解 3.0问题回归 4.0方法提炼 5.0小结 1.0问题引入相信你思考过这样一个问题: 有1000瓶水,其中一瓶是有毒的,小白鼠只要尝一点带毒的水24h就会死亡。 问题:至少需要多少只小白鼠才能在24h内检验出那瓶水有毒?怎样检验? 我们通常会用“二分法”解决。 将1000瓶水按照 000, 001,002, 003,...... 997,998, 999 依次编号,对前500瓶用一只小白鼠检验,然后确认有毒的水是否在这500瓶内; 在筛选出的剩余500瓶水中,继续前250用一只小白鼠检验,后250瓶用另一个小白鼠检验; 然后,前125,后125; ...... 等等,真的是这样吗? 答案是否定的,因为检验一次就需要24h,时间一定超出限制,不符合题意。 我们按照平时的思路对检验对象进行区分(将多个对象分批进行检测),发现是行不通的。 其实,这就是没有真正理解二分法的本质,没有根据正确的标准对白鼠进行区分。在你理解本文之后,就会发现仅仅按照编号,采用类似 "对区间二分" 的方法来解决本题是多么的天真。 在这里我们先解决问题,对二分法的讨论放在文章后半部分。 2. 0问题解决当我们理解了二进制的思维,用二进制思维来解决问题,就会发现容易的多: 我们知道,n位二进制可以表示2^n(C语言不能这样写)瓶水,0-999这1000个编号转换成二 进制需要10个二进制位,即2^9 |
CopyRight 2018-2019 实验室设备网 版权所有 |