前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >视频动画 | 什么是选择排序?

视频动画 | 什么是选择排序?

作者头像
我脱下短袖
修改2019-12-27 12:03:30
5560
修改2019-12-27 12:03:30
举报
文章被收录于专栏:算法无遗策算法无遗策

简单选择排序属性

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

回顾一下上次快速排序的优化,减少不必要的交换,以后在解决过程中可以把符合条件的元素位置标记下来,因此可以定义一个标记变量,来标记本轮比较中最符合条件的元素,本轮结束时才进行最后一步的是否交换。

视频动画:简单选择排序

http://mpvideo.qpic.cn/0af2x4s5yi2vibypaugakailaehvrvptbfddqhidayaagdabaeeq.f10002.mp4?dis_k=ef7e9dc4a65f0a5bdbf3b64c1cbe4478&dis_t=1577419370

Code

Result

初始状态 [5, 1, 9, 3, 7, 4, 8, 6, 2]

下标0,1已交换[1, 5, 9, 3, 7, 4, 8, 6, 2]

下标1,8已交换[1, 2, 9, 3, 7, 4, 8, 6, 5]

下标2,3已交换[1, 2, 3, 9, 7, 4, 8, 6, 5]

下标3,5已交换[1, 2, 3, 4, 7, 9, 8, 6, 5]

下标4,8已交换[1, 2, 3, 4, 5, 9, 8, 6, 7]

下标5,7已交换[1, 2, 3, 4, 5, 6, 8, 9, 7]

下标6,8已交换[1, 2, 3, 4, 5, 6, 7, 9, 8]

下标7,8已交换[1, 2, 3, 4, 5, 6, 7, 8, 9]

——END——

推荐阅读:

视频动画 | 什么是快速排序?

视频动画 | 什么是希尔排序?

视频动画 | 什么是插入排序?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法无遗策 微信公众号,前往查看

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

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档