C++ 数据结构1

O(1)<O(logn)<O(n)<O(nlogn)<O(n2)<O(n3)<O(2n)<O(n!)<O(nn)

 每一个指令,在具体的计算机上运行速度固定。

 

空间复杂度:

long sum1(int n)
{
    long ret = 0;      //4 个字节                   
    int* array = (int*)malloc(n * sizeof(int)); //4n个字节内存
    int i = 0;   //4 个字节  
    for(i=0; i<n; i++)   //没有分配内存
    {
        array[i] = i + 1;
    }
    
    for(i=0; i<n; i++)   //没有分配内存
    {
        ret += array[i];
    }
    
    free(array); 
    
    return ret; 
}

 

long sum3(int n)
{
    long ret = 0;//4个字节
    
    if( n > 0 )//没有内存
    {
        ret = (1 + n) * n / 2; 
    }
    
    return ret;
}
long sum2(int n)
{
    long ret = 0; //4个字节
    int i = 0;//4个字节
    
    for(i=1; i<=n; i++)
    {
        ret += i;
    }
    
    return ret;
}

 01:08:06

posted @ 2015-09-12 16:43  无天666  阅读(170)  评论(0编辑  收藏  举报