您的位置: 主页>机器人编程>Scratch编程>学习scratch初识算法
加盟酷吧机器人 培养孩子核心能力

学习scratch初识算法

算法是什么?这个词看起来高大上,解释起来就是解决问题的思路和方法。包括明确目标、提出问题、按照一定顺序寻找解决问题的办法、最终验证程序。

       少儿学编程不是为了编写大段的程序,而是为了培养好的思考习惯,为其他学科的学习打基础。

       下面就拿排序算法作为例子讲解思考过程。

        排序算法是每个程序员都要学习的基础,也是逻辑思考的基础。排序算法有很多种:

        一列数1-10,随机排列。5 3 1 2 6 8 9 7 10 4.提出问题:怎么把他们按照顺序排列?

        1.冒泡排序。他的思考过程是什么呢?首先我们想象有一个天平,把这个天平放在数列的最右端,然后比较天平上左右两个数字的“重量”(大小)。如果右边的比左边的小,就把他移动到大数的左边。比较完之后逐一向左移动天平,重复比较步骤。这样就把数字1移动到了最左端。此时需要把天平再次移动到最右端,重复以上步骤。这样就完成了从小到大的排序。就好像一个个冒泡泡一样,所以叫冒泡排序。

学习scratch初识算法

        到这里程序结束了么?不要忘了验证!就是让天平从左往右反顺序比较一下天平两端的数字,如果左边的较大,就要返回错误代码,让程序员检查。

       2.快速排序。快速排序是冒泡排序的优化版——看到了吧,算法就是思维的方法,不同的思考路径带来不同解决问题的方法。

思考方式:(1)在待排序的元素任取一个元素作为基准,称为基准元素;

     ( 2)将待排序的元素进行分区,比基准元素大的元素放在它的右边,比其小的放在它的左边;

      (3)对左右两个分区重复以上步骤直到所有元素都是有序的。

所以我是把快速排序联想成东拆西补或西拆东补,一边拆一边补,直到所有元素达到有序状态。

下面再看看示图理解下吧:

学习scratch初识算法

3. 选择排序。顾名思义就是从数列中选择最小的把它放在左边。这是自然思考的结果,小朋友第一时间就会想到的方法。但是缺点显而易见:如果数列中数太多,那么程序就会反复执行扫描(swap),并且是顺序扫描,这样下来程序效率就会很低了。

来看一下程序实现:

第一步挑选出一个数列中最小的数的下标。

学习scratch初识算法

第二步将最小的数与第一个位置的数交换,然后在剩下的数组中再寻找最小的数,找到后与第二个位置交换,以此类推最终实现所有数的排序。

学习scratch初识算法

       以上简单介绍几种排序算法,优劣各有千秋,需要自己总结完善。

       想象力是知识运用的基础。方法只要去训练21天都可以熟练掌握,但是想象力是没有办法训练的。学习技能千万不要扼杀孩子的想象力,尤其对于编程来讲,如果没有想象力,就算把指令倒背如流,也无法写出高效的程序,更无法解决问题。

后记,小编朋友研发了一个游戏化的少儿编程在线课程(5-12岁),游戏化教学结合scratch(一款在线少儿编程工具,类似乐高的积木拼搭),我家娃娃学了几次课,非常喜欢(超预期),16次课才200多块钱,对锻炼孩子的思维能力和动手动力很有帮助。

欧美思机器人教育加盟 赚钱好项目
上一篇:Scratch几何探索,创建正多边形
下一篇:Scratch 少儿编程之旅(七)— 《铃铛琴》Scratch不
您可能喜欢
​第一节:认识Scratch编程工具
第一节:认识Scratch编程工具
​Scratch | 放假了,带孩子一起撸猫
Scratch | 放假了,带孩子一起撸猫
​小朋友的新伙伴:Scratch
小朋友的新伙伴:Scratch
​[推荐]《课堂中的Scratch》
[推荐]《课堂中的Scratch》
​Scratch3.0少儿编程案例:魔术戏法
Scratch3.0少儿编程案例:魔术戏法
回到顶部