算法概念与特性详解
需积分: 5 201 浏览量
更新于2024-07-16
收藏 919KB PDF 举报
算法的概念和特性
算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决定这个问题。
算法的特性包括:
1、有穷性:一个算法应包括有限的操作步骤,能在执行有穷的操作步骤之后结束。
2、可行性:算法中的每一个步骤都是可以在有限时间内完成的基本操作,并能得到确定的结果。
3、确定性:算法中的每一个步骤都应当确定的,不能模棱两可。
4、输入:一个算法有0个或多个输入,在算法运算开始之前给出算法所需数据的初值,这些输入取自特定的对象集合。
5、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。
算法的描述可以通过编程语言来实现,如C语言、Java语言等。例如,设计一个算法,求1*2*3*4*5的值,可以使用C语言编写程序来实现。
在编程中,算法的描述可以通过不同的方式来实现,例如,使用for循环来实现算法。例如,以下是三种不同的算法来实现求1*2*3*4*5的值:
例1:
int main(void)
{
int ans = 1;
for (int i = 1; i <= 1000; ++i)
{
ans *= i;
}
return 0;
}
例2:
int main(void)
{
int ans = 1;
for (int i = 1; i <= 1000; i += 2)
{
ans *= i;
}
return 0;
}
例3:
int main(void)
{
int ans = 1;
for (int i = 2; i <= 1000; i += 2)
{
ans *= i;
}
return 0;
}
这些算法都可以实现求1*2*3*4*5的值,但是它们的效率和时间复杂度不同。
此外,算法不仅仅用于计算机领域,还可以应用于日常生活中,如乐谱的乐队演奏的算法,菜谱是做菜肴的算法,珠算口诀是使用算盘的算法等。
2019-11-12 上传
2019-09-12 上传
2021-09-03 上传
2020-07-23 上传
2024-07-02 上传
2019-12-10 上传
2019-11-11 上传
2020-06-10 上传
2019-12-10 上传
dllglvzhenfeng
- 粉丝: 1w+
- 资源: 1919
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析