打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何用计算思维解决问题?

生活中我们会发现这么一个现象:有些孩子在学校的时候名列前茅,考试出色,是别人眼中的学霸,但是毕业之后进入社会却反而没有在学校优秀,这是为什么呢?

学校内外其实有很大的差异,学校里我们有老师引导,统一进行,只有一种答案。但是出了学校,每个人、每个问题都是不一样的,可能大多数的情况是一个问题有多种的解决办法,这就要求我们寻求更高效更先进的方法。

所以,我们现在很强调去用一种高效的思维方式去解决问题,解决问题的思维方式有很多,计算思维就是其中这样一种方式,并且孩童时代是可塑性最强的时候,也是培养这种能力最好的时期。

我们请到了北大博士张丹丹老师也是我们小码精灵的课程负责人来和大家讲一讲如何用计算机思维解决问题。

以下是讲座内容

在了解计算思维之前,首先我们先来了解一下问题的差异。

仔细回想一下我们的工作就会发现,我们每天的工作实质就是在解决问题。同样的,孩子在学校学习的过程其实也是在学解决问题方法的过程,但他们解决问题和我们解决的问题并不一样,一般来说有以下几点:

问题简单、单一

在学校孩子们学习数学、语文、英语等课程,老师在教这些课程的过程中给出他们思考的问题比我们现实中简单一些,而且相对来说比较单一。比如,在数学课上,老师就很少会和音乐课上的知识结合起来去问问题,而且知识范围比较明确,老师在教会一个知识点后才会去做相应的练习。

评判因素单一

老师评判学生是否掌握大部分是通过考试来评判,然后将学生的答案与标准答案进行对比。

有示范

孩子在学习新知识的时候,老师会进行示范,引导他们去理解。比如去讲一个圆的面积,老师可能会演示不同面积的圆,带学生一步一步推导出面积公式,之后再进行大量的练习。

缺乏真实性

在很多教材中,有些问题是缺乏真实性的。比如在数学的应用题上出现过1毛钱的冰棍儿、3毛钱的汽水......这些题干中的条件对现在来说已经有了年代上的差距,我们很少会遇到1毛钱冰棍儿这样的情况,所以并不能解决实际问题。

而在现实中,问题往往要比学校里的复杂很多,而且解决问题没有一个明确的知识范围,也没有人去示范要去怎么样做,所以我们要通过去搜索各个方面的资源,然后去尝试各种各样的方式去找到最优办法。评判这个方法是否正确还需要多方面因素的考虑,而不是像在学校里那样有一份标准答案做准线。

现实生活中的问题要比学校中问题真实很多,真实一方面是指我们遇到的是当下的问题,还有一方面是指我们在解决问题时,如果结果不如预期,那么后果可能会比搞砸一份试卷要严重很多。

那么如何解决现实问题呢?其实有很多思路,这里我们讲的是计算思维。

计算思维是一种使用工具高效解决问题的思路方法,它不是知识和工具本身。可能听起来很高深晦涩,但其实我们在工作学习生活上处处都在用到它。

举个简单例子:比如今天有客人要来家里吃饭,你要做哪些准备?

首先我们要思考今天要做什么菜、什么饭、煮什么汤,确定好之后我们就要确定采购的原料,采购完之后,就要分配原料,每一种菜大概都有一种模式,炒菜就是和原料一起炒,很快就能完成,而炖菜则需要一定的水,花费一定的时间去做。想好之后就要考虑做菜具体步骤:大概要怎么做,口味是什么样的,需要用到多少量的调料.......最后这些都会落实在我们用的材料、工具等等。

这其实就是一个完整的利用计算思维思考问题的一种案例。我们其实每天都在用它来解决我们生活上遇到的问题。

计算思维一般分为四个步骤:分解、模式识别、抽象化和算法。

上述所说的例子其实就基本用到了这四个步骤。

接下来我会详细介绍分解和模式识别这两个步骤。

但在这之前,我们要先经历的一个过程:认清问题。

在孩子学习过程中,我们会遇到这样的问题:孩子做了很长时间的题,一直做不出来,最后发现是看错了题,或者漏掉了题中的条件、自己创造出一些条件......这就是没有认清问题的结果。如果一开始不认清问题,那么问题很难被解决掉,还做了一些无用功。

在这里我们举一个现实的例子:飞机的发明。从人类有思考会观察开始,人类一直都梦想着飞上天。而有2000多年的时间里,人类一直是探索人类像鸟一样飞的方式,但这其实是一种歧途,人和鸟的生理构造不一样,我们不可能会像鸟一样飞起来。

飞行的本质就是能够上天、能够前进、可以控制,只要满足这三个条件就可以,而像鸟一样飞并不是我们的必要条件。

再举一个例子,我们可能会在网上看到过照片中这种情况:

最后小孩的解决方式是这样的:

这个问题的本质是让孩子离开这个栏杆,而不是一定要让孩子的头原路返回。


分解

在认清问题之后,就要把问题分解。分解就是把大问题拆解成小问题,把复杂问题拆解成简单问题,把新问题拆分成若干老问题。目的就是为了我们在解决问题的时候更容易去处理。

比如还是上边飞机发明的例子,对于飞机的发明的问题主要可以分解成3个:

1.飞机可以在空中持续停留。对此研究出空气动力学、流体力学等理论,对飞行器所需要的升力有很大的影响。

2.在空中可以前进。尼古拉斯·奥托发明的内燃机使得飞机有了持续的动力。

3.控制飞机飞行。莱特兄弟在前有的基础上,发明了控制杆控制飞机的飞行,之后做了大量的风洞试验,最后发明了飞机。

模式识别

模式识别简单来说就是找到事物规律然后不断复制重复执行。

例如我们都知道英语当中,动词的进行时态是在单词后加ing就可以,有一些特殊的单词,是去e加ing,或者ie变y加ing,这就是英语单词一个时态的规律。这其实就是一个模式识别的过程。

如果我们能够掌握这种规律,那我们学习英语的过程中就会轻松很多,效率也会提高很多。

那么为什么我们要找模式:

例如下图的灯泡问题,在尝试过程中观察可以得到:灯泡是通过整行整列地控制。那么问题就来了,下面左图的灯泡是如何亮起来的,右图的灯泡又是如何亮起来的?

这就要通过提取模式再去解决这个问题。

抽象化与算法

在这里我先把这两个放在一起讲。

抽象化:抓住主要的、本质的东西、忽略其他的,去繁求简。

在小码精灵L1的课程中就有一个抽象化的问题:送快递。要让可乐一次性不重复不遗漏地送完所有快递,应该怎么做呢?

这其实是一个一笔画的问题,最早是来源于欧拉的七桥问题。在哥尼斯堡有七个桥把岛和路连在一起,能不能一次性不重复地不遗漏地走完呢?欧拉就把这个问题抽象成点和线的连接问题,问题一下就变得简单许多。

如何抽象,忽略哪些信息,保留哪些信息这些是根据问题决定的。

例如运动物体中相遇问题和火车过桥问题就是两种抽象化的方式。

相遇问题一般把运动的物体或者人都抽象化成一个点,点在线上移动,然后再去解决问题。但对于火车过桥问题,就要考虑火车的长度,就不能抽象为一个点,而是抽象成一条线。

回到之前灯泡的问题,我们到最后发现其实灯泡最后只有两种状态:亮和不亮。这其实有很多家长就会联想到电脑里的0和1,这是一个很好的联想方式。那么我们观察灯泡其实可以发现,灯泡亮是由两个开关控制的,我们需要考虑的其实就是两个开关点击的次数,那么抽象出来其实就是在考虑开关的奇偶性的问题。

算法,任何解决问题的步骤计划都可以称之为算法。它极大地决定这解决问题的效率。

比如折纸飞机的步骤也是一个算法,上学过程中的路线也是一个算法。

评价算法的纬度有很多,比如有时间、金钱、人力。

这有一个典型的例子:

在一个小学有一个小码精灵的期末考试,其中有一台电脑比较好用,四个孩子为一台电脑角逐:

有两种办法,猜拳决定或者是手心手背决定。那么哪一种方式更快呢?

最后可以看出一次胜出的概率分别是4/27和1/2,那么手心手背的胜率要比猜拳大很多。

所以我在解决一个问题的时候,如果我们能够学会优化算法,那我们解决问题的效率就会高很多。



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Scratch趣味编程 | 培养孩子的计算思维,从编程开始
人人都应具备的“计算思维”
一书一法一工具|高纬度思考法:活该你只能是员工,因为你不懂
到底有没有必要学习编程?
给孩子带来底层思维的改变的少儿编程
一位程序员爸爸吐槽:“我不会教孩子编程,你们也别教。”
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服