插入排序动态示意【Scratch】

简介: 插入排序动态示意【Scratch】

插入排序算法其实很简单:就是每次往已经有序的序列中插入一个数,假设第 i 位左边的已经有序,第 i 位右边的为待排序的序列,第 i 位即是当前待插入的数。然后遍历左侧的有序序列,查找合适的插入位置即可。

效果图

20200512134826878.gif

点击image.png  随机初始化小猫的颜色,然后点击 “空格” 对颜色进行插入排序,我这里设置的颜色规则是 红>蓝>绿>黄。其中进行比较的两只小猫会跳起(待插入的小猫会保持跳起状态一段时间),被调整的序列也会跳起,这样可以更直观的看出是哪两只小猫在进行比较(同时还搭配了不同的音效),以及具体插入的位置在哪里。


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



角色*代码块

image.png

场景的代码块

image.png


目录
相关文章
|
2月前
|
JSON 算法 数据挖掘
基于图论算法有向图PageRank与无向图Louvain算法构建指令的方式方法 用于支撑qwen agent中的统计相关组件
利用图序列进行数据解读,主要包括节点序列分析、边序列分析以及结合节点和边序列的综合分析。节点序列分析涉及节点度分析(如入度、出度、度中心性)、节点属性分析(如品牌、价格等属性的分布与聚类)、节点标签分析(如不同标签的分布及标签间的关联)。边序列分析则关注边的权重分析(如关联强度)、边的类型分析(如管理、协作等关系)及路径分析(如最短路径计算)。结合节点和边序列的分析,如子图挖掘和图的动态分析,可以帮助深入理解图的结构和功能。例如,通过子图挖掘可以发现具有特定结构的子图,而图的动态分析则能揭示图随时间的变化趋势。这些分析方法结合使用,能够从多个角度全面解读图谱数据,为决策提供有力支持。
124 0
|
7月前
|
存储 算法 测试技术
数据结构学习记录——树习题-Complete Binary Search Tree(题目描述、输入输出示例、数据结构的选择、核心算法、计算左子树的规模)
数据结构学习记录——树习题-Complete Binary Search Tree(题目描述、输入输出示例、数据结构的选择、核心算法、计算左子树的规模)
85 1
|
7月前
|
存储 算法
数据结构学习记录——图应用实例-六度空间(题目描述、算法思路、伪代码及解读、图解)
数据结构学习记录——图应用实例-六度空间(题目描述、算法思路、伪代码及解读、图解)
89 0
【动态规划入门修炼手册】——泰波那契数(滚动数组空间优化)|三步问题
【动态规划入门修炼手册】——泰波那契数(滚动数组空间优化)|三步问题
73 0
|
存储 C++ 容器
使用C++编写一个图的深度和广度优先遍历的代码
使用C++编写一个图的深度和广度优先遍历的代码
149 0
|
数据挖掘
白话Elasticsearch53-深入聚合数据分析之Collect Model_bucket优化机制:深度优先、广度优先
白话Elasticsearch53-深入聚合数据分析之Collect Model_bucket优化机制:深度优先、广度优先
93 0
数据结构之排序【归并排序和快排的顶级优化和快排的三种原理的实现及分析】 内含动态演示图
引言: 1.归并排序(MergeSort) 2.快速排序的优化(顶级优化) 3.快速排序的三种思路的代码实现及分析 4.归并排序和快排第3原理的测试
|
算法 容器
二维容器进行图的DFS搜索和BFS搜索-C++STL模板
二维容器进行图的DFS搜索和BFS搜索-C++STL模板
199 1
二维容器进行图的DFS搜索和BFS搜索-C++STL模板
|
存储 算法 C++
STL设计之链表设计,分块分组件分析,迭代器设计思路
STL设计之链表设计,分块分组件分析,迭代器设计思路
STL设计之链表设计,分块分组件分析,迭代器设计思路