InsertionSort_Algorithm_Demo

插入排序和选择排序以及冒泡排序是最基础的排序算法,大家最熟悉不过,作为基础排序的学习,我们实现了可视化的版本,借助可视化模型我们可以更加深入的理解排序的内在。如果您有兴趣可以点击查阅详情。

首先呢我们要介绍一下什么是插入排序:

百度百科:

插入排序(Insertion sort)是一种简单直观且稳定的排序算法。如果有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。

环境介绍:

  • 语言:Java
  • 使用JDK:java 1.8
  • 工具:eclipse或者IDEA都可。
  • 主要技术:Swing awt

我们这里不介绍swing和awt的实现,而是直接借用模板来操作。模板中封装好了需要的一些简要实现。
需要的可以在这里下载模板源代码。

https://gitee.com/xiangzi1019/template_code/tree/master

首先介绍一下模板:

1.主要包含了一个框架AlgoFrame,其中内容主要用于绘制内部信息,和双缓存的实现。
2.AlgoVishelper看名称也可以知道,主要封装了一些帮助函数,例如绘制实体或者空心的圆、矩形、颜色等函数
3.AlgoVisualizer主要就是视图可见的操作,例如你想事先声明功能都可以写在这里,然后调用数据和帮助类就可以实现。

导入文档包之后呢,我们就先操作AlgoVisualizer类。我们根据我们的需求实现

感谢您的鼓励.如果喜欢可以送我一包辣条。