🐓 算法
算法是对特定问题求解步骤的一种描述,算法是指令的有限序列。其中每一条指令表示一个或者多个操作。
🐓 算法的5种属性
有穷性
一个算法必须总是在执行有穷的步骤后,且在每个步骤执行的过程中时间是有限的
1.有穷性意味着算法必须在执行有限步骤后结束。
2.这意味着算法不会陷入无限循环或需要无限长的时间来执行。
3.同时,每个步骤都应该在可接受的时间内完成,以确保算法的效率。
确定性
算法中每一条指令必须要有准确的含义,不存在其他的含义。
1.确定性意味着算法的每一步都应该明确、无歧义地定义。
2.对于算法中的每一种情况,需要执行的动作都应该严格、清晰地规定,不应有模糊或不确定的地方。
3.这有助于确保算法的正确性和可预测性。
可行性
一个算法是可行的就是算法描述的操作是可以通过已经执行的基本运算有限次数实现
1.可行性意味着算法的每一步都应该是可执行的。
2.这意味着算法中描述的操作应该是可以通过已经实现的基本运算来完成的。
3.此外,可行性还涉及到算法所需的资源(如时间、存储空间等)是否在实际应用中是可接受的。
输入
一个算法有零个或多个输入,这些输入取自于某个特定对象的集合
1.输入是算法开始运算前给予算法的量。
2.一个算法可以没有输入(例如,某些随机生成数字或图案的算法ÿ