算法包含算法设计和算法分析两个方面。算法设计主要研究怎样针对某一特定类型的问题设计出求解步骤,算法分析则要讨论所设计出来的算法步骤的正确性和复杂性。
对于一些问题的求解步骤,需要一种表达方式,即算法描述。其他人可以通过这些算法描述来了解设计者的思路。就像人的思想和行动,只有描述出来才能够明白你的想法和举动,了解你在想什么,在做什么。描述一个算法,可以用自然语言、流程图以及N-S流程图等,下面分别进行介绍。