前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >十大经典排序算法动画,看我就够了!

十大经典排序算法动画,看我就够了!

原创
作者头像
五分钟学算法
发布2018-12-03 10:41:30
1.7K0
发布2018-12-03 10:41:30
举报
文章被收录于专栏:五分钟学算法

Tip 为了演示更加清楚,本文中所有的动画都放慢了速度,因此GIF大小对比之前会有所增大,图片加载速度会变慢,如果你想获取所有的超清动画,在公众号回复 腾讯 可获得资料。

在前面的章节中详细的讲解分析了十大经典排序算法,本文将进行一个大总结同时分析它们的时间复杂度与稳定性。

排序算法是《数据结构与算法》中最基本的算法之一。

排序算法可以分为内部排序外部排序

内部排序是数据记录在内存中进行排序。

而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。

常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。

用一张图概括:

image
image
关于时间复杂度:
  1. 平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。
  2. 线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序;
  3. O(n1+§)) 排序,§ 是介于 0 和 1 之间的常数。 希尔排序
  4. 线性阶 (O(n)) 排序 基数排序,此外还有桶、箱排序。
关于稳定性:
  1. 稳定的排序算法:冒泡排序、插入排序、归并排序和基数排序。
  2. 不是稳定的排序算法:选择排序、快速排序、希尔排序、堆排序。

1. 冒泡排序

image
image

2. 选择排序

image
image

3. 插入排序

image
image

4. 希尔排序

image
image

5. 归并排序

image
image

6. 快速排序

image
image

7. 堆排序

堆排序.gif
堆排序.gif

8. 计数排序

image
image

9. 桶排序

image
image

10. 基数排序

image
image

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于时间复杂度:
  • 关于稳定性:
  • 1. 冒泡排序
  • 2. 选择排序
  • 3. 插入排序
  • 4. 希尔排序
  • 5. 归并排序
  • 6. 快速排序
  • 7. 堆排序
  • 8. 计数排序
  • 9. 桶排序
  • 10. 基数排序
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档