1 / 12
文档名称:

2022年快速排序实验报告.docx

格式:docx   大小:140KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

2022年快速排序实验报告.docx

上传人:读书之乐 2021/12/17 文件大小:140 KB

下载得到文件列表

2022年快速排序实验报告.docx

相关文档

文档介绍

文档介绍:2021年快速排序实验报告
2021年快速排序实验报告
1 / 12
2021年快速排序实验报告
南京邮电大学通达学院
试验汇报
试验名称: 快速排序算法
课程名称: 微型计算机原理与接口技术
姓名 班级学号: 钱煜中
142501
14250120
试验时间: .
2021年快速排序实验报告
2021年快速排序实验报告
2 / 12
2021年快速排序实验报告
快速排序原理
试验原理:
快速排序算法quick sort关键是利用分治递归思想进行排序方法。它原理是首先从待排序原始序列a[p,…,r]中选择一个元素a[q]作为分界点(pivot), 然后将序列分为两个子序列, 左边子序列a[p,…,q-1]元素值都小于分界点m, 右边子序列a[q+1,…,r]元素值都大于分界点值, 此时得到序列命名为a’, 而a[q]应该处于其排好序后正确位置。然后利用递归思想, 对左右两个子序列a[p,…,q-1]和a[q+1,…,r]再分别进行排序, 直到子序列长度为1结束, 序列有序。
其中, 选择a中基准分界点方法有多个, 或者选择序列首元素a[p], 或者选择序列尾元素a[r], 或者选择序列中间位置元素a[(p+r)/2], 或者取这三个元素根据大小排序后中间值。
例子:
a = [38, 81, 22, 48, 13, 69, 93, 14, 45, 58, 79, 72], 取[(left+right)/2]处元素作为分界点(pivot)值。具体第一次分区过程以下:
2021年快速排序实验报告
2021年快速排序实验报告
3 / 12
2021年快速排序实验报告
所以, 第一次分区, 以69为分界点, 结果为:
a’= [14, 58, 22, 48, 13, 38, 45, 69, 93, 81, 79, 72]。
试验代码
#include <>
int fast_sort(int *a,int i,int j,int *p,int **b)
{
int k,temp,f,g;
g=*p;
g=(12*g)-12;
//intf("成功进入快速排序 g=%d\n",g);
2021年快速排序实验报告
2021年快速排序实验报告
5 / 12
2021年快速排序实验报告
k=i;
i++;
for(;i<j;)
{
for(;a[j]>a[k]&&i<j;)
{
j--;
}
for(;a[i]<a[k]&&i<j;)
{
i++;
}
//intf("i=%d\n",i);
if(i==j)
break;
if(i<j);
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
2021年快速排序实验报告
2021年快速排序实验报告
6 / 12
2021年快速排序实验报告
}
if(a[k]>a[j])
{
temp=a[k];
a[k]=a[j];
a[j]=temp;
}
//r(f=0;f<12;f++)
//
//intf("%3d",a[f]);
//
//printf("排序成功 \n");
for(f=0;f<12;f++)
{
*(b+g+f)=a[f];
}
return j;
}
void digui(int *a,int i,int j,int *p,int **b,int *z)
{
int k;
2021年快速排序实验报告
2021年快速排序实验报告
7 / 12
2021年快速排序实验报告
if(i<j)
{
//intf("成功进入递归 p=%d\n",*p);
*p=*p+1;
k=fast_sort(a,i,j,p,b);
digui(a,i,k-1,p,b,z);
digui(a,k+1,j,p,b,z);
if(*p>*z)
*z=*p;
//printf("z=%d\np=%d",*z,*p);
*p=*p-1;
}
}
void main()
{
int a[]={38, 81, 22, 48, 13, 69, 9

最近更新

人教版五年级上册数学期末测试卷含答案(巩固.. 4页

人教版五年级下册数学期中测试卷精品(易错题.. 6页

人教版六年级下册数学第一单元《负数》测试卷.. 5页

人教版六年级下册数学第三单元《圆柱与圆锥》.. 8页

人教版六年级下册数学第四单元《比例》测试卷.. 7页

人教版四年级下册数学期中测试卷含答案【考试.. 6页

六年级下册数学 圆柱与圆锥 测试卷精品【满分.. 8页

六年级下册数学 圆柱与圆锥 测试题附完整答案.. 6页

冀教版六年级下册数学第三单元 正比例、反比例.. 8页

北京版六年级下册数学第二单元 比和比例 测试.. 7页

北师大版六年级下册数学期末测试卷及答案(基.. 8页

北师大版六年级下册数学第一单元 圆柱和圆锥 .. 7页

北师大版六年级下册数学第四单元 正比例和反比.. 8页

小升初六年级下册数学期末测试卷精品(考点梳.. 6页

小升初数学应用题大全附完整答案(名校卷) 15页

小升初数学必刷应用题附精品答案 15页

小学六年级下册数学期中测试卷带答案(b卷) 7页

小学六年级下册数学期末测试卷带答案(a卷) 6页

招行客服职业道路规划与管理 7页

慕夕洗衣纸招股说明书 8页

(核定版)浙教版七年级上册数学第1章 有理数含.. 7页

2020年新编数通工程师认证考试试题名师精品资.. 9页

2021年武汉工程科技学院软件工程专业《计算机.. 18页

2024年度中国樱桃进出口数据分析简报 18页

膜法捕集二氧化碳CO2技术及工业示范 4页

STA无痛麻醉仪ppt课件 70页

常用打捞工具及工作原理 62页

异位妊娠双语教学资料 9页

少教多学在中小学语文教学中的策略与方法研究.. 10页

2021年八年级物理填空题初二下物理试题及答案.. 10页