《动图系列》选择排序---心路历程
来源:互联网 发布:客家话软件 编辑:程序博客网 时间:2024/05/22 00:57
一只 “ 选择排序 ” 的心路历程
《转载》请注明出处—-http://blog.csdn.net/q6834850/article/details/72180131# –By q6834850
作为一只在算法界成熟、稳重的算法,我对自己形象的定义是中年大叔型。
- 为什么这么说呢?
因为我是如此的稳定,我的交换操作介于 0 和 (n - 1) 次之间。我的比较操作为 n (n - 1) / 2 次之间。我的赋值操作一定介于 0 和 3 (n - 1) 次之间。
- 为什么会这样呢?
因为我的实现方式是 循环n次数组,每次比较(n-i)次,找到最小的那个索引min,然后交换一次change(i,min).
void Selection(int a[],int lo,int hi){ for(int i=lo;i<=hi;i++) { int min=i; for(int j=i+1;j<=hi;j++) { if(a[min]>a[j]) //比较a[min]和a[j],将更小的那个的索引赋值给min min = j; } change(min,i);//交换a[min]和a[i] }}
来看看实现过程的动态图吧
左边红色代表此时i的位置,右边红色代表在剩余未排序数组中找到的最小值
阅读全文
0 0
- 《动图系列》选择排序---心路历程
- 排序系列--选择排序
- 排序系列之选择排序
- 算法系列-直接选择排序
- 【算法系列】—选择排序
- 排序算法系列-选择之直接选择
- 转-各种排序动图
- 排序算法系列二(选择排序)
- 排序算法系列之选择排序
- 排序算法系列之选择排序
- 排序算法系列:选择排序算法
- 排序总结系列三:选择排序
- PHP排序算法系列:直接选择排序
- Java系列-排序算法之选择排序
- 【C++心路历程5】奇偶排序
- 【C++心路历程27】变量排序
- 内部排序系列 之选择排序与堆(heap)排序
- 回归基础系列-选择排序[JAVA]
- 静态链表-数据结构(3)
- SQL SERVER 中的smalldatetime和datetime区别
- dhtml--复选框组件
- python判断输入的字符串是否是回文联
- ZooKeeper的常用命令
- 《动图系列》选择排序---心路历程
- 编码格式简介(ANSI、GBK、GB2312、UTF-8、GB18030和 UNICODE)
- 实现MacOs系统和WmwareFusion之间的无缝复制粘贴
- IntelliJ IDEA 设置代码提示或自动补全的快捷键
- MongoDB创建过期索引的三种方法
- 密码算法详解——AES
- VPN之——VPN服务器局域网其他IP要访问VPN客户端ip的配置
- 常用Maven插件介绍
- Java Timestamp 类的使用