插入排序法【Scratch版】

2019-12-09 11:15

插入排序法是取出未排序的第一个值(带处理值)与已排列的值比较,插入已排序数据的适当位置。排序过程可参考下表,以[10,3,12,20,6]数列为例,从小到大排列,数列字段[ ]内为已排列的数列。

数列

待处理值

比较与插入

排序结果

开始

10,3,12,20,6


10,3,12,20,6

步骤1

[10],3,12,20,6 3 3<10,3插入第一个位置
3,10,12,20,6

步骤2

[3,10],12,20,6 12
12>10,不变
3,10,12,20,6

步骤3

[3,10,12],20,6 20
20>12,不变
3,10,12,20,6

步骤4

[3,10,12,20],6 6

6<20,继续往前比较

6<12,继续往前比较

6<10,继续往前比较

6>3,插入第二个位置

3,6,10,12,20

 范例

随机产生5个数值放入名为【数列】的列表,在通过插入排序法将列表内的值从小到大排序,范例程序中定义了两个变量,变量【已排序End】用来记录已排序的最后一个值的项次,变量【处理中】记录待排序的第一个值的项次。

程序积木如下:

https://cdn.china-scratch.com/timg/191211/1115154c8-0.jpg

--end--

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

感兴趣的朋友可以扫描二维码,关注一下,或微信搜索“大耳猴少儿编程”

https://www.china-scratch.com/Uploads/Editor/2018-04-22/5adca08bdc212.jpg

声明:本文章由爬虫自动处理和转载作为教育分享用途,原作者可通过邮件及时和我们联系处理:freemanzk@qq.com