数据结构 第一章
1.2 算法和算法的评价
1.2.1 算法的基本概念
算法 是对特定问题求解步骤的一种描述,它是指令的有限序列,其
中的每台哦指令表示一个或多个操作
程序 = 数据结构 + 算法(求解问题的步骤)
算法的特性 一 1.有穷性,一个算法必须总在执行又穷步之后结束,且每一步都在有穷时间内完成(算法必须是有穷,程序可以无穷)
算法的特性 二 2.确定性,算法的每条指令必须有确切的含义,对于相同的输入只能的相同的输出
算法的特性 三 3.可行性,算法描述的操作都可以通过已经实现的基本运算执行有限次来实现
输入,一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合
输出,一个算法有一个或多个输入,这些输出是与输入有着某种特定关系的量
一个算法需要满足以上全部条件
一个好的算法需要满足以下性质
1.正确性 算法应当能够正确的解决求解问题
2.可读性 算法应具有良好的可读性
3.健壮性 输入非法数据时,算法能适当地做出反应或进行处理,而不会产生莫名其妙的输出结果。
4.高效率与地存储需求 时间复杂度第,空间复杂度低,算法执行占用内存小
1.2.2 算法效率的度量
练习程序
#include<stdio.h>
int main(){
int i = 0;
int n = 3000;
for ( i = 0; i < n; i++)
{
printf("i love you %d\n", i);
}
printf("i love you more than %d\n", n);
return 0;
}
record from wangdao408