例1.由图书的放置问题推出:解决方法的效率跟数据的跟组织方式有关。
例2.写一个程序函数PrintN是的输入一个正整数N后,能顺序打印1到N的全部整数。
两种方法:for循环和递归调用。
void PrintN( int n)//for
{ int i;
for(i=1;i<=N;i++);
printf('%d\n",i);
return;//表示
}
void PrintN( int N)//递归
{
if(N)
{
PrintN(N-1);
printf("%d\n",N);
}
return;
}
两个函数看上去差不多,但是但N=100000是递归函数出现错误(递归对内存空间的占用太大,爆炸)。
总结:解决方法的效率跟数据的跟空间利用率有关。
例3.写程序计算多项式在给定点X处的值。
pow函数包含在math.h中。
总结:解决方法的效率跟数据的跟算法的巧妙程度有关。
到底什么是数据结构:
1.数据对象在计算机的组织的方式。
2.数据对象一定与一系列加在其上的操作相关联。
3.完成这些操作所以的方法就是算法。
捕获.JPG
那什么是抽象呢?抽象的好处又是是什么?