03实验三 分治法解决赛程问题实验三分治法解决赛程问题
一、实验目的
1、熟悉快速排序算法;
2、掌握分治法解决赛程问题。
二、实验环境
Windows XP以上版本的操作系统,Visual Studio 2010编程环境。
三、实验内容
1、快速排序问题
在快速排序中,记录的比较和交换是从两端向中间进行的,关键字较大的记录一次就能交换到后面单元,关键字较小的记录一次就能交换到前面单元,记录每次移动的距离较大,因而总的比较和移动次数较少。
#include
using namespace std;
typedef int Type...
实验三分治法解决赛程问题
一、实验目的
1、熟悉快速排序算法;
2、掌握分治法解决赛程问题。
二、实验环境
Windows XP以上版本的操作系统,Visual Studio 2010编程环境。
三、实验
1、快速排序问题
在快速排序中,记录的比较和交换是从两端向中间进行的,关键字较大的记录一次就能交换到后面单元,关键字较小的记录一次就能交换到前面单元,记录每次移动的距离较大,因而总的比较和移动次数较少。
#include
using namespace std;
typedef int Type;
void Swap(int &a,int &b)
{
int temp=a;a=b;b=temp;
}
int Partition (Type a[], int p, int r)
{
int i = p, j = r + 1;
Type x=a[p];
// 将< x的元素交换到左边区域
// 将> x的元素交换到右边区域
while (true) {
while (a[++i] x);
if (i >= j) break;
Swap(a[i], a[j]);
}
a[p] = a[j];
a[j] = x;
return j;
}
void QuickSort (Type a[], int p, int r)
{
if (p
本文档为【03实验三 分治法解决赛程问题】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。