算法实验报告(完美版).pdfVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

实验报告

实验一:

一、实验名称

二分搜索法

二、实验目的

编写程序实现用二分法在一有序序列中查找一个数

三、实验内容

1、程序源代码

#includestdio.h

intResearch(inta[],intx,intn)

{

intleft=0,right=n-1,mid;

if(n0x=a[0])

{

while(leftright)

{

mid=(left+right+1)/2;

if(xa[mid])

right=mid-1;

else

left=mid;

}

if(x==a[left])

returnleft;

}

return-1;

}

voidInput()

{

inta[30],n,i,j,x;inta[30],n,i,j,x;

输入数组长度

输入有序数组:输入有序数组:

for(i=0;in;i++)

{

}}

输入要查询的数字输入要查询的数字输入要查询的数字

j=Research(a,x,n);

if(j=0)

在数组中的下标为

else

没找到没找到

}

main()

{

Input();

}

运行结果

图一

图二

实验心得:本次实验让我了解了二分搜索法的基本思想,同时我们应

该注意二分搜索法必须是在有序的元素中进行,不能在无序的元素中使用。

快速排序:

#includeiostream

usingnamespacestd;

#defineMAXSIZE100

intPartition(intq[MAXSIZE],intlow,inthight);

voidQsort(intq[],intlow,inthight);

intmain()

{

intq[MAXSIZE];//存储数列的数组

q[0]=0;

intn=0;

请输入需要排序的数的个数:请输入需要排序的数的个数:

cinn;

请输入需要排序的数:请输入需要排序的数:

for(inti=1;i=n;i++)//用循环方式输入数列

{

cinq[i];

}

Qsort(q,1,n);//调用Partition()函数

排序后结果为:排序后结果为:

for(i=1;i=n;i++)//循环输出结果

{

}

coutendl;

return0;

}

intPartition(intq[MAXSIZE],intlow,inthigh)//对数列及数列部分划分成高低两

个部分

{

intpivotkey;//用于标记

文档评论(0)

198****6960 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档