http://c.biancheng.net/cpp/shujujiegou/

算法(algorithm)是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。此外,一个算法还具有下列5个重要特性:

1) 有穷性

一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有穷时间内完成。

2) 确定性

算法中每一条指令必须有确切的含义,读者理解时不会产生二义性。即对于相同的输入只能得出相同的输出。

3) 可行性

一个算法是可行的,即算法中描述的操作都是吋以逋过已经实现的基本运算执行有限次来实现的。

4) 输入

一个算法有零个或多个的输入,这些输入取自于某个特定的对象的集合。

5) 输出

一个算法有一个或多个的输出,这些输出是同输入有着某种特定关系的量。

通常设计一个“好”的算法应考虑达到以下目标:

  • 正确性:算法应当能够正确地解决求解问题。
  • 可读性:算法应当具有良好的可读性,以助于人们理解。
  • 健壮性:当输入非法数据时,算法也能适当地做出反应或进行处理,而不会产生莫名其妙的输出结果。
  • 效率与低存储量需求:效率是指算法执行的时间,存储量需求是指算法执行过程中所需要的最大存储空间,这两者都与问题的规模有关。

算法的基本概念及特性(有穷性、确定性、可行性、输入和输出)相关推荐

  1. 算法的有穷性和可行性的区别

    成为亿万富翁的步骤: 1.打工 2.每个月把一半工资存起来,持续1000年 3.成为亿万富翁 1000年很长但不是无限长,所以是有穷的:但一般情况下人类活不到一百岁,所以第二步是不可行的. 个人拙见.

  2. 鲸鱼算法(WOA)优化的BP神经网络预测,WOA-BP回归预测,多输入单输出模型。

    %%  清空环境变量 warning off             % 关闭报警信息 close all               % 关闭开启的图窗 clear                 ...

  3. 粒子群算法(PSO)优化最小二乘支持向量机回归预测,PSO-LSSVM回归预测,多输入单输出模型。

    %%  清空环境变量 warning off             % 关闭报警信息 close all               % 关闭开启的图窗 clear                 ...

  4. 灰狼算法GWO优化径向基网络做回归预测,多输入单输出模型。GWO-RBF

    clc; clear all; close all tic warning off %%  导入数据 % 训练集--190个样本 P_train = xlsread('data','training ...

  5. 考研数据结构笔记--数据结构和算法的基本概念

    考研数据结构笔记--数据结构和算法的基本概念 数据结构的基本概念 算法的基本概念 数据结构的基本概念 数据 数据是对客观事物的符合表示,在计算机科学中是指所有能输入到计算机中并且被计算机程序处理的符合 ...

  6. C语⾔程序设计——算法的基本概念

    C语⾔程序设计--算法的基本概念 算法的基本概念 算法的特性 有穷性:⼀个算法必须在⼜穷步之后结束,都有有穷性的时间完成,不能够⽆限的执⾏下去 确定性:算法的每⼀个步骤都是有确定意义的,每⼀个过程不能 ...

  7. 在一个程序中什么算是亮点_算法的五个重要特性是

    算法的五个特征是?如题 1.有穷性: 一个算法必须保证执行有限步之后结束: 2.确切性: 算法的每一步骤必须有确切的定义: 3.输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是 ...

  8. (王道408考研数据结构)第一章绪论-第二节1:算法的基本概念、算法的特性及设计要求

    文章目录 一:算法的基本概念 (1)数据结构和算法的关系 (2)算法(Algorithm)的定义 二:算法的特性 三:算法设计要求 程序=数据结构+算法,前面我们已经探讨了什么是数据结构,明白了如何用 ...

  9. c语言中算法的有穷性是指,在C语言中,算法的有穷性是指什么?

    1.有穷性(有限性).任何一种提出的解题方法都是在有限的操作步骤内可以完成的. 如果在有限的操作步骤内完不成,得不到结果,这样的算法将无限的执行下去,永远不会停止.除非手动停止.例如操作系统就不具有有 ...

最新文章

  1. IBM 存储RAID硬盘离线和数据库损坏的恢复处理办法
  2. 一个简单RPC框架是怎样炼成的(II)——制定RPC消息
  3. Python3高并发定时更新任务进程池和线程池的使用
  4. Iterator接口介绍
  5. 在linux中 如何创建磁盘配额,如何在Linux系统中配置磁盘配额?
  6. 使用Eclipse开发基于SSH三大框架的Web项目带图详解
  7. Python统计磁盘代码文件行数
  8. Oracle学习笔记
  9. 创建新的apple id_新的Apple Maps与Google Maps:哪个适合您?
  10. vue示例todos
  11. c语言计算矩阵的n次方,N矩阵的n次方运算及折半查找报告--数据结构(C语言)
  12. 网络推广方式有哪些?分享几种常见的推广方式,十分有效
  13. 融新聚力,筑梦畅行|云畅科技“融云计划”第一期集训营圆满结营
  14. 深度xp系统安装教程
  15. MATLIB从excel表中读取数据并画出函数图像
  16. 魔兽地图服务器修改,如何修改魔兽地图(傻瓜版)
  17. 2_linux-常用命令1
  18. 北斗GPS系统在车辆管理系统中的运用与北斗GPS车辆管理调度系统平台建设方案硬件设备
  19. python内存泄露memory leak排查记录
  20. 李宏毅DLHLP.21.Text Style Transfer

热门文章

  1. 计算机视觉之目标检测与轨迹追踪
  2. BeanFactory 和 ApplicationContext的区别
  3. DVWA环境搭建教程-手把手最详细介绍
  4. 游戏平台搭建之安卓资源优化
  5. 脑波扫描器市场现状及未来发展趋势
  6. MATLAB科学计算机lnx代码,[2018年最新整理]Matlab科学计算.ppt
  7. 向SQL Server 中导入长文本
  8. 依次输入5个数,求其中的最大值并输出
  9. 百度鹰眼控制台整合javaweb
  10. 全球及中国氢燃料电池汽车行业销售规模与运营前景展望报告2022版