第一范文网 - 专业文章范例文档资料分享平台

算法设计与分析 - 总结0

来源:用户分享 时间:2025/5/22 1:52:33 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

20. {

21. j=0; 22. o=0;

23. m=fabs(i-1);

24. s1=newint *[fabs(i)]; 25. while(o

27. q=p=s[o];

28. for(k=i-1;k>=0;k--)

29. { 30. s1[j]=newint[i]; 31. for(l=0;l

33. if(l==k){s1[j][l]=i;} 34. else{

35. s1[j][l]=*p; 36. p++;} 37. } 38. j++; 39. p=q; 40. } 41. o++; 42. delete[] q; 43. }

44. delete[]s; 45. s=s1; 46. } 47. }

3-8对于一个平面上n个点的集合S,设计蛮力算法求集合S的凸包的一个极点。 点集合中最左边或者最右边的点一定是凸包的一个极点,则求凸包的极点的问题转化为求点的x坐标最大或最小的点

1. int getPole(int x[],int y[],int n) 2. {

3. int r=0;

4. for(inti=0;i

6. if(x[i]>x[r])r=i; 7. }

8. return r;

3-11 设计算法生成在n个元素中包含k个元素的所有组合对象。

两种思路:

1、 生成所有的组合,在组合中找元素个数为k个的组合。 伪代码:

1.初始化一个长度为n的比特串s=00…0并将对应的子集输出; 2.for(i=1; i<2n; i++) //注意不能书写成i<=2n 2.1 s++;

2.2 判断s中1的个数,若为k,则将s对应的子集输出;

2、 使用k层嵌套循环生成元素个数为k个的组合。 设k=3;n个元素存储在数组a[]中; 伪代码:

for (i=1; i

输出a[i]a[j]a[k]构成的组合。

3-13美国有个连锁店叫7-11这个连锁店以前是每天7点开门,晚上11点关门 不过现在是全天24小时营业。有一天,有个人来到这个连锁店,买了4件商品

营业员拿起计算器敲了一下,说:总共是$7.11顾客开玩笑说:所以你们商店就叫7-11?营业员没有理她,说:当然不是,我是把它们的价格相乘之后得到的。

顾客说:相乘?你应该把他相加才对。营业员说,我弄错了。接着又算了一遍,结果让两个人吃惊的是:计算结果也是$7.11请问,这4件商品的价格是多少? 参考代码:

1. #include 2. #include 3. int main() 4. {

5. long i,j,k,m; 6.

7. for (i=1; i <=711/4 ; i++) 8. {

9. for (j=i; j <=711/3 ; j++) 10. {

11. for (k=j; k <=711/2 ; k++) 12. {

13. m=711-i-j-k;

14. if (i*j*k*m==711*1000000) 15. {

16. cout<

21. return 0; 22. }

输出结果为:价格分别是1.2 1.25 1.5 3.16

第4章 分治法

了解分治法的设计思想

设计思想:将要求解的原问题划分成k个较小规模的子问题,对这k个子问题分别求解。如果子问题的规模仍然不够小,则再将每个子问题划分为k个规模更小的子问题,如此分解下去,直到问题规模足够小,很容易求出其解为止,再将子问题的解合并为一个更大规模的问题的解,自底向上逐步求出原问题的解。 步骤:(1)划分(2)求解子问题(3)合并

分治法的代表算法及时间复杂度:

归并排序,快速排序,最大子段和,最近对问题,凸包问题,这五种问题的分治算法的时间复杂度为O(nlog2n)

棋盘覆盖,循环赛日程安排为O(4k)

掌握归并排序和快速排序算法的算法伪代码。(P78-83) 归并排序:

算法中数组r中存储原始数据,r1在中间过程中存储排序后的数据,s指需排序数组的起始下标,t指需排序数组的结束下标。最终排序后的数据依然存储在r数组中。

快速排序:

搜索更多关于: 算法设计与分析 - 总结0 的文档
算法设计与分析 - 总结0.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c2egpv24zno7916195d01_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top