中国高校课件下载中心 》 教学资源 》 大学文库

《数据结构》课程教学资源(PPT课件讲稿)第十章 内部排序

文档信息
资源类别:文库
文档格式:PPT
文档页数:114
文件大小:511.5KB
团购合买:点击进入团购
内容简介
10.1 概述 10.2 插入排序 10.3 快速排序 10.4 堆排序 10.5 归并排序 10.6 基数排序 10.7 各种排序方法的综合比较 10.8 外部排序
刷新页面文档预览

10.1概述 10.2插入排序 10.3快速排序 104堆排序 10.5归并排序 10.6基数排序 10.7各种排序方法的综合比较 10.8外部排序

10.1 概述 10.2 插入排序 10.3 快速排序 10.4 堆排序 10.5 归并排序 10.6 基数排序 10.7 各种排序方法的综合比较 10.8 外部排序

10.1概述 、排序的定义 、内部排序和外部排序 三、内部排序方法的分类

10.1 概 述 一、排序的定义 二、内部排序和外部排序 三、内部排序方法的分类

、什么是排序? 排序是计算机内经常进行的一种操作, 其目的是将一组“无序”的记录序列调 整为“有序”的记录序列。 例如:将下列关键字序列 52,49,80,36,14,58,61,23,97,75 调整为 14,23,36,49,52,58,61,75,80,97

一、什么是排序? 排序是计算机内经常进行的一种操作, 其目的是将一组“无序”的记录序列调 整为“有序”的记录序列。 例如:将下列关键字序列 52, 49, 80, 36, 14, 58, 61, 23, 97, 75 调整为 14, 23, 36, 49, 52, 58, 61 ,75, 80, 97

般情况下, 假设含n个记录的序列为{R1,R2,…,Rn} 其相应的关键字序列为{K1,K2…,Kn} 这些关键字相互之间可以进行比较,即在 它们之间存在着这样一个关系 Kn1≤Kn≤。≤K p pn 按此固有关系将上式记录序列重新排列为 RR 2 R p1 p n pn 的操作称作排序

一般情况下, 假设含n个记录的序列为{ R1 , R2 , …, Rn } 其相应的关键字序列为 { K1 , K2 , …,Kn } 这些关键字相互之间可以进行比较,即在 它们之间存在着这样一个关系 : Kp1≤Kp2≤…≤Kpn 按此固有关系将上式记录序列重新排列为 { Rp1, Rp2, …,Rpn } 的操作称作排序

二、内部排序和外部排序 若整个排序过程不需要访问外存便 能完成,则称此类排序问题为内部排 序 反之,若参加排序的记录数量很大, 整个序列的排序过程不可能在内存中 完成,则称此类排序问题为外部排序

二、内部排序和外部排序 若整个排序过程不需要访问外存便 能完成,则称此类排序问题为内部排 序; 反之,若参加排序的记录数量很大, 整个序列的排序过程不可能在内存中 完成,则称此类排序问题为外部排序

三、内部排序的方法 内部排序的过程是一个逐步扩大 记录的有序序列长度的过程。 有序序列区无序序列区 经过一趟排序 有序序列区无序序列区

三、内部排序的方法 内部排序的过程是一个逐步扩大 记录的有序序列长度的过程。 经过一趟排序 有序序列区 无 序 序 列 区 有序序列区 无 序 序 列 区

基于不同的“扩大”有序序列长 度的方法,内部排序方法大致可分 下列几种类型 插入类交换类选择类 归并类其它方法

基于不同的“扩大” 有序序列长 度的方法,内部排序方法大致可分 下列几种类型: 插入类 交换类 选择类 归并类 其它方法

排录的数类型定频序表最大长度 typedef int KeyType;∥/关键字类型为整数类型 typedef struct i KeyType key ∥关键字项 InfoType otherinfo;∥其它数据项 3 RcdType, ∥记录类型 typedef struct t RcdType rMAXSIZE+1;/r10闲置 int length; ∥顺序表长度 i Sqlist ∥顺序表类型

#define MAXSIZE 1000 待排记录的数据类型定义如下 // 待排顺序表最大长度 : typedef int KeyType; // 关键字类型为整数类型 typedef struct { KeyType key; // 关键字项 InfoType otherinfo; // 其它数据项 } RcdType; // 记录类型 typedef struct { RcdType r[MAXSIZE+1]; // r[0]闲置 int length; // 顺序表长度 } SqList; // 顺序表类型

1插入类 将无序子序列中的一个或几 个记录“插入”到有序序列中, 从而增加记录的有序子序列的长 度

1. 插入类 将无序子序列中的一个或几 个记录“插入”到有序序列中, 从而增加记录的有序子序列的长 度

2.交换类 通过“交换”无序序列中的记 录从而得到其中关键字最小或最大 的记录,并将它加入到有序子序列 中,以此方法增加记录的有序子序 列的长度

2. 交换类 通过“交换”无序序列中的记 录从而得到其中关键字最小或最大 的记录,并将它加入到有序子序列 中,以此方法增加记录的有序子序 列的长度

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档