引言
在C语言中,我们学到了可以使用函数来实现某种功能。
而函数,是算法的具体化实现。而算法+数据结构,就是我们所执行的程序。
算法在编写成为可执行程序后,运行时就需要消耗时间资源和空间(内存)资源。
故在衡量算法的好坏时,一般就是从时间和空间这两个维度来衡量的。
即时间复杂度和空间复杂度。
一、关于时间复杂度
时间复杂度主要衡量的是一个算法的运行快慢。
在计算机科学中,使用一个函数来表示算法的时间复杂度。
这个函数定量的描述了对应算法的运行时间。
这里的时间不是指一个算法实际上在机器上运行所需要的时间。毕竟在不同状况的机器,甚至在同一台机器上运行同一程序,所需的时间都会有或大或小的差别。
算法中的基本操作的执行次数,即为算法的时间复杂度。
二、时间复杂度的表示
1.算法中的基本操作的执行次数
有如下函数:
int Fun(int N)
{
int cnt = 0;
int i =0;
int j = 0;
for(i=0;i<N;i++)
{
for(k=0;k<N;k++)
{
cnt++;
}
}
for(i