以下是高德纳在他的著作《计算机程序设计艺术》里对算法的特征归纳:

输入:一个算法必须有零个或以上输入量。

输出:一个算法应有一个或以上输出量,输出量是算法计算的结果。

明确性:算法的描述必须无歧义,以保证算法的实际执行结果是精确地符合要求或期望,通常要求实际运行结果是确定的。

有限性:依据图灵的定义,一个算法是能够被任何图灵完全系统模拟的一串运算,而图灵机只有有限个状态、有限个输入符号和有限个转移函数(指令)。而一些定义更规定算法必须在有限个步骤内完成任务。

有效性:又称可行性。能够实现,算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。

算法的核心是创建问题抽象的模型和明确求解目标,之后可以根据具体的问题选择不同的模式和方法完成算法的设计。

完全遍历法和不完全遍历法:在问题的解是有限离散解空间,且可以验证正确性和最优性时,最简单的算法就是把解空间的所有元素完全遍历一遍,逐个检测元素是否是我们要的解。这是最直接的算法,实现往往最简单。但是当解空间特别庞大时,这种算法很可能导致工程上无法承受的计算量。这时候可以利用不完全遍历方法——例如各种搜索法和规划法——来减少计算量。

分治法:把一个问题分割成互相独立的多个部分分别求解的思路。这种求解思路带来的好处之一是便于进行并行计算。

动态规划法:当问题的整体最优解就是由局部最优解组成的时候,经常采用的一种方法。

贪心算法:常见的近似求解思路。当问题的整体最优解不是(或无法证明是)由局部最优解组成,且对解的最优性没有要求的时候,可以采用的一种方法。

线性规划法:见条目。

简并法:把一个问题通过逻辑或数学推理,简化成与之等价或者近似的、相对简单的模型,进而求解的方法。

递归方法与迭代方法

刚刚查询:Algorithm 44517.28 寻姓 进退自如 纺纱 古地中海 下工夫 从南到北 Branislav 最性感 蕈蚊 居住面积 比基尼 Mandheling 日式照烧茄瓜 FREIGHT 日全食 Multiple 波特兰 剧艺社 摄影艺术家 PLoS 旅客列车 造纸厂 hydrophilous 印度洋 宁夏回族 �±������� 潜移暗化 过滤式防毒面具 总监督 不积极 传动装置 Industrial oldland 路易斯安那 afghani 匡蒂科规则 李庆逵 群众运动 基本建设 乐亭县 使用人 朝云暮雨 年富力强 肯尼思 准备好 巴布教派 Bomeranorum 蜂子窝村 大头菜 有地位 十二奇峰如画屏 演唱会 南阳盆地 白蝌蚪寻妈妈 proalem omanianization Thursday 大有为 乔装打扮 另一个 影印机 协调局 王洪文 PROWLER 消防栓 白汁黄鳝 卖出去 大风暴 孙子兵法 冥道残月破 Stephen-Henry 新华街 凉拌卷心菜 北港溪 星尾兽 Daresbury 东封西祀 使用范围
友情链接: 知道 电影 百科 好搜 问答 微信 值得买 巨便宜 天天特价 洛阳汽车脚垫 女装 女鞋 母婴 内衣 零食 美妆 汽车 油价 郑州 北京 上海 广州 深圳 杭州 南京 苏州 武汉 天津 重庆 成都 大连 宁波 济南 西安 石家庄 沈阳 南阳 临沂 邯郸 保定 温州 东莞 洛阳 周口 青岛 徐州 赣州 菏泽 泉州 长春 唐山 商丘 南通 盐城 驻马店 佛山 衡阳 沧州 福州 昆明 无锡 南昌 黄冈 遵义
© 2025 haodianxin 百科 消耗时间:0.031秒 内存0.8MB