当前位置:首页 scratch > 正文

scratch写个冒泡排序算法

作者:野牛程序员:2023-02-19 22:55:21 scratch阅读 2484

以下是Scratch的冒泡排序算法实现:

1、首先,创建一个列表,里面包含待排序的数字。

2、创建一个“重复”块,重复的次数是待排序数字的数量减去一。

3、在“重复”块内部,创建另一个“重复”块,重复的次数是待排序数字的数量减去当前循环的次数减去一。

4、在这个嵌套的“重复”块内部,比较当前数字和下一个数字的大小。如果当前数字比下一个数字大,就将它们交换位置。

5、循环结束后,第一个数字就是最小的数字。重复这个过程,直到所有数字都被排序。


以下是Scratch的代码实现:

when green flag clicked
set [待排序列表 v] to (list) 4 2 1 3 5
set [长度 v] to (length of [待排序列表 v])
repeat (长度 - 1) times
  repeat (长度 - 计数器 - 1) times
    if <(item (计数器) of [待排序列表 v]) > (item (计数器 + 1) of [待排序列表 v])> then
      set [暂存 v] to (item (计数器) of [待排序列表 v])
      replace item (计数器) of [待排序列表 v] with (item (计数器 + 1) of [待排序列表 v])
      replace item (计数器 + 1) of [待排序列表 v] with (暂存)
    end
  end
end
broadcast [排序完成 v]

这个代码使用两个嵌套的“重复”块来实现冒泡排序。首先,外部的“重复”块重复的次数是待排序数字的数量减去一,每次循环找到一个数字的正确位置。内部的“重复”块重复的次数是待排序数字的数量减去当前循环的次数减去一,每次循环比较相邻的两个数字并交换它们的位置。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • 小程序开发
  • 网站建设
  • 最新推荐

    热门点击