算法是解决问题方法的精确描述,但是并
不是所有问题都有算法,有些问题经研究可行,
则相应有算法,但这并不是说问题就有结果。
上述的“可行”,是指对算法的研究。
1.待解问题的描述
待解问题表述应精确、简练、清楚,使用
形式化模型刻划问题是最恰当的。例如,使用
数学模型刻划问题是最简明、严格的,一旦问
题形式化了,就可依据相应严格的模型对问题
求解。
2.算法设计
算法设计的任务是对各类具体问题设计良
好的算法及研究设计算法的规律和方法。常用
的算法有:穷举搜索法、递归法、回溯法、贪
心法、分治法等。
3.算法分析
算法分析的任务是对设计出的每一个具体
的算法,利用数学工具,讨论各种复杂度,以
探讨某种具体算法适用于哪类问题,或某类问
题宜采用哪种算法。
算法的复杂度分时间复杂度和空间复杂
度。