计算计算法第10章.pptVIP

  • 3
  • 0
  • 约2.18千字
  • 约 14页
  • 2016-01-09 发布于未知
  • 举报
* 第十章 排 序 10.1 排序基本概念 排序(sorting)又称分类,意指把一批杂乱无章的数据序列依据记录的关键字重新排列成有序序列。 10.1 选 择 排 序 10.1.1 简单选择排序 简单选择排序(simple selection sort)也是直接选择排序。此方法在一些高级语言课程中做过介绍,是一种较为容易理解的方法。 对于一组关键字{ K1,K2,…,Kn},将其由小到大进行简单排序的具体思路是: 首先从K1,K2, …,Kn中选择最小值,假如它是Kz,则将Kz与K1对换;然后从K2,K3,…,Kn中选择最小值Kz,再将Kz与K2对换。如此进行选择和调换n-2趟。第(n-1)趟,从Kn-1、Kn中选择最小值Kz,将Kz与Kn-1对换,最后剩下的就是该序列中的最大值,一个由小到大的有序序列就这样形成。该算法的时间复杂度为O(n2)。 由此可见,对于n个记录的关键字,需要n-1趟;而在每趟之中,又有一个内循环。图10.6是一个有5个关键字{3,4,1,5,2}的简单选择排序过程的示意图。 图10.6 简单选择排序 假设用变量z记下较小值的下标,则算法如下: 算法10.1 void sisort(node r[?],int n) {for (i=1;in;i++) { z

文档评论(0)

1亿VIP精品文档

相关文档