排序算法之一--冒泡排序,选择排序,插入排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法之一--冒泡排序,选择排序,插入排序相关的知识,希望对你有一定的参考价值。
一.排序算法定义
1.排序算法定义
排序算法是一种能将一串数据依照特定顺序进行排列的一种算法
2.六种排序算法理解方式
想象小时候老师给我们按照身高进行排队时用到的方法,脑子里面要浮现老师排身高的场面 以从矮到高进行排序为例
3.稳定性的定义
一个排序算法是稳定的,当有两个相等键值的纪录R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。
二.三种基本排序算法
1.冒泡排序:“移”
把最高的移到最右边
第一次循环,找到最高的那个人放到最右边 方法是从头两两进行比较将两个钟高的一个往右边移动,移到最后就将最高的移到了最右边
第二次循环,用同样的方法将次高的那个人往右移倒数第二个位置就是次高的人
依次类推,在剩下的人中将高的都往右边挤,挤到最后剩下的最高的就在最右边了
2.选择排序:“揪”
把最矮的揪出来放到最左边
第一遍循环:将第一个位置的人揪出来空出第一个位置,跟剩下的人一一比较,如果有比他矮的,就将那个矮的揪出来再与剩下的进行比较,比较到最后就把最矮的那个歌人揪出来了,把 最矮的那个人放到第一个位置
第二遍循环:把第二个人揪出来跟剩下的人进行比较,比较到最后就把剩下的最爱的那个人揪出来了放到了第二个位置
依次类推,每个位置上就放的是应该放的那个数值
冒泡排序是将最大的移到最右边,而选择排序是将最小的揪出来放到最左边
3.插入排序:“插”
老师先把前两个同学排好高矮,然后排三个人的身高,因为前面两个人已经排好序了,只要把第三个人插到合适的位置,三个人就排好序了,然后把第四个人插到合适的位置,前四个人就排好序了,以此类推
里面循环完后将加入的那个数值插入正确的位置
以上是关于排序算法之一--冒泡排序,选择排序,插入排序的主要内容,如果未能解决你的问题,请参考以下文章
数据结构c语言版八大算法(上)图文详解带你快速掌握——希尔排序,堆排序,插入排序,选择排序,冒泡排序!