- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 算法的基本概念
1.1 引言
算法设计与分析在计算机科学与技术中的地位
算法(Algorithm)一词的由来。
1.1.1 算法的定义和特征
欧几里德算法:
算法1.1 欧几里德算法
输入:正整数m,n
输出:m,n的最大公因子
1. int euclid(int m,int n)
2. {
3. int r;
4. do {
5. r = m % n;
6. m = n;
7. n = r;
8. } while(r)
9. return m;
10. }
一、算法的定义:
定义1.1 算法是解某一特定问题的一组有穷规则的集合。
二、算法的特征:
1.有限性。算法在执行有限步之后必须终止。
2.确定性。算法的每一个步骤,都有精确的定义。要执行的每一个动作都是清晰的、无歧义的。
3.输入。一个算法有0个或多个输入,它是由外部提供的,作为算法开始执行前的初始值,或初始状态。算法的输入是从特定的对象集合中抽取的。
4.输出。一个算法有一个或多个输出,这些输出,和输入有特定的关系,实际上是输入的某种函数。不同取值的输入,产生不同结果的输出。
5.能行性。算法的能行性指的是算法中有待实现的运算,都是基本的运算。原则上可以由人们用纸和笔,在有限的时间里精确地完成。
1.1.2 算法设计的例子,穷举法
一、穷举法,是从有限集合中,逐一列举集合的所有元素,对每一个元素逐一判断和处理,从而找出问题的解。
二、例
例1.1 百鸡问题。
“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?”
:公鸡只数,:母鸡只数,:小鸡只数。约束方程:
(1.1.1)
(1.1.2)
(1.1.3)
1。第一种解法:
、、的可能取值范围:0 ~ 100,对在此范围内的,、、的所有组合进行测试,凡是满足上述三个约束方程的组合,都是问题的解。
把问题转化为用元钱买只鸡,为任意正整数,则方程(1.1.1)、(1.1.2)变成:
(1.1.4)
(1.1.5)
算法1.2 百鸡问题
输入:所购买的三种鸡的总数目n
输出:满足问题的解的数目k,公鸡,母鸡,小鸡的只数g[],m[],s[]
1. void chicken_question(int n,int k,int g[],int m[],int s[])
2. {
3. int a,b,c;
4. k = 0;
5. for (a=0;a=n;a++)
6. for (b=0;b=n;b++)
7. for (c=0;c=n;c++) {
8. if ((a+b+c==n)(5*a+3*b+c/3==n)(c%3==0)) {
9. g[k] = a;
10. m[k] = b;
11. s[k] = c;
12. k++;
13. }
14. }
15. }
16. }
17. }
执行时间:外循环:次,
中间循环:次,
内循环: 次。
当时,内循环的循环体执行次数大于100万次。
2。第二种解法:
公鸡只数:
母鸡只数:
母鸡只数:。
算法1.3 改进的百鸡问题
输入:所购买的三种鸡的总数目n
输出:满足问题的解的数目k,公鸡,母鸡,小鸡的只数g[],m[],s[]
1. void chicken_problem(int n,int k,int g[],int m[],int s[])
2. {
3. int i,j,a,b,c;
4. k = 0;
5. i = n / 5;
6. j = n / 3;
7. for (a=0;a=i;a++)
8. for (b=0;b=j;b++) {
9. c = n – a – b;
10. if ((5*a+3*b+c/3==n)(c%3==0)) {
11. g[k] = a;
12. m[k] = b;
13. s[k] = c;
14. k
您可能关注的文档
最近下载
- 2011届高考化学一轮复习专题模拟检测:专题5_氮族元素及其化合物.doc VIP
- Unit6大单元教学整体单元分析课件人教版九年级英语全册.ppt
- 教育信息化背景下跨学科教学资源的数字化建设.docx
- 城镇直埋供热管道电预热安装施工工法(技术方案).pdf VIP
- 2014造口治疗师培训个案发展计划及产品册造口学校.pdf VIP
- 标准化乡镇卫生院制度.doc
- 2026年湖南科技职业学院单招职业技能考试必刷测试卷完美版.docx VIP
- 2024年9月8日贵州省黔西南州州直遴选(事业单位考聘)笔试真题及答案解析.doc VIP
- 2025年兵棋章节答案.docx VIP
- 酒店工程部计件量化方案(3篇).docx VIP
文档评论(0)