选择排序动态示意【Scratch】

简介: 选择排序的算法很简单,一句话概括就是每次找到未排序部分(本例为右侧)最小的数,放到已排序序列(本例为左侧)的末尾。

选择排序的算法很简单,一句话概括就是每次找到未排序部分(本例为右侧)最小的数,放到已排序序列(本例为左侧)的末尾。

 

效果图

20200512170910407.gif

点击image.png 随机初始化小猫的颜色,然后点击 “舞台” 对颜色进行插入排序,我这里设置的颜色规则是 红>蓝>绿>黄。在无序序列中进行查找最小值的过程中该小猫会跳起,当找到最小值时,会将该小猫往下移动。待插入的小猫会保持跳起状态一段时间,这样可以更直观的看出是哪两只小猫在进行比较(同时还搭配了不同的音效),以及具体发生交换的位置在哪里。


ps: 待插入的小猫左侧是有序序列,右侧是待排序序列。


角色代码块:

image.png

场景代码块:

image.png

目录
相关文章
|
编解码 Android开发 iOS开发
HLS直播协议详解
HLS直播协议详解
1030 2
|
Kubernetes 关系型数据库 MySQL
ChaosBlade常见问题之数据库进行故障注入报错ibdata1文件异常如何解决
ChaosBlade 是一个开源的混沌工程实验工具,旨在通过模拟各种常见的硬件、软件、网络、应用等故障,帮助开发者在测试环境中验证系统的容错和自动恢复能力。以下是关于ChaosBlade的一些常见问题合集:
452 1
|
SQL 关系型数据库 MySQL
解决sql插入字符串中包含‘单引号问题
解决sql插入字符串中包含‘单引号问题
1551 2
解决sql插入字符串中包含‘单引号问题
|
缓存 JavaScript 前端开发
成功解决:npm 版本不支持node.js。【 npm v9.1.2 does not support Node.js v16.6.0.】
这篇文章介绍了如何解决npm版本与Node.js版本不兼容的问题,提供了查看当前npm和Node.js版本的步骤,以及如何根据Node.js版本选择合适的npm版本并进行升级的详细指导。
成功解决:npm 版本不支持node.js。【 npm v9.1.2 does not support Node.js v16.6.0.】
|
并行计算 搜索推荐 数据可视化
十几种排序算法的可视化效果,快来看看!
这两天在B站上刷到一个视频,把各种排序动画可视化显示了出来,觉得还蛮好玩的,当即就决定自己也要写一个玩玩,顺便复习一下排序算法,话不多说,进入正文~
|
Web App开发 缓存 前端开发
前端性能优化技巧与工具
【6月更文挑战第30天】前端性能优化旨在提升Web应用速度和响应性,关乎用户体验、转化率及SEO。关键技巧包括减少HTTP请求、压缩资源、利用缓存、异步加载和优化DOM操作。工具如Lighthouse、PageSpeed Insights、Webpack Bundle Analyzer及Chrome DevTools提供性能分析和优化建议。优化是持续的过程,适应复杂Web需求。
|
数据采集 监控 Java
Spring Boot拦截器:精细化控制请求与响应
本篇详细介绍了在Spring Boot中使用拦截器的方法。拦截器是一种强大的机制,可用于在请求处理前后进行操作,如鉴权、日志记录等。文章涵盖了创建拦截器类、注册拦截器以及实际应用案例。通过具体的代码示例,读者可以了解如何在项目中配置和使用拦截器,以实现各种功能需求。拦截器为Spring Boot应用增加了更多的灵活性和可扩展性,能够提升应用的安全性和可维护性。
3254 0
Spring Boot拦截器:精细化控制请求与响应
|
测试技术 Python
软件测试|教你如何离线安装第三方库
软件测试|教你如何离线安装第三方库
|
算法 Java Apache
面向Java开发者的Echarts饼图百分比计算方法
面向Java开发者的Echarts饼图百分比计算方法
398 0
|
JSON Dart 数据格式
Flutter系列文章-Flutter进阶
通过本文的学习,你已经了解了Flutter的高级主题,包括处理用户交互、创建动画以及访问网络数据等。这些知识将帮助你更深入地掌握Flutter的开发能力,为你的应用添加更多功能和交互体验。希望本文对你的Flutter学习之旅有所帮助,祝你在Flutter的世界中取得更多成功!
385 0