现在的位置: 首页 > 综合 > 正文

排序算法简介

2013年09月16日 ⁄ 综合 ⁄ 共 564字 ⁄ 字号 评论关闭
文章目录

一说到算法可能大家觉得最熟悉的就是排序算法,学数据结构与算法的课时肯定会学.排序算法主要分五大类

交换排序,插入排序,选择排序,归并排序,分配排序

 

1.交换排序(exchange sort)

冒泡排序,快速排序属于交换排序.

所谓交换嘛,就是比较待排序的关键字,如果次序相反时则交换.当只交换相邻元素的位置时就叫冒泡排序,交换左右两部分的元素则叫快速排序,它用到了递归的思想.

 

2.插入排序(insert sort)

直接插入排序,希尔(shell)排序属于插入排序

所谓插入就是把一个元素一已经排好序的一组元素比较,然后插入到一个合适的位置.

 

3.选择排序(select sort)

简单选择排序,堆排序属于选择排序

选择就是从待排序的一组元素中选择出一个最大或者最小的出来,然后放在末尾或者开头.

 

4.归并排序(merge sort)

归并排序

归并排序是采用分治的思想,先把一组数据分组,当分到两个一组时很容易排好序,然后再合并起来.

 

5.分配排序(distribution sort)

基数排序,桶排序属于分配排序,需要借助额外的存储空间,基数排序将待排序的键值个十百千...位分出来排序,然后综合起来.

桶排序是从待排序元素中找个最大值出来.然后以此大小创建一个临时数组.待排序元素的值对应临时数组的索引,这样一映射过来就变成有序的了.

 

 

 

 

 

 

 

抱歉!评论已关闭.