码迷,mamicode.com
首页 > 其他好文 > 详细

一、基本概念

时间:2019-03-17 23:34:35      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:alt   color   指令集   def   语言   div   png   fun   oid   

技术图片

技术图片

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>

clock_t start,stop;
double duration;
#define MAXN 10
#define MAXK 1000000

double f1(int n, double a[], double x);
double f2(int n, double a[], double x);
void func();

void func()
{
    duration = ((double)(stop-start))/CLK_TCK/MAXK;
    //CLK_TCK : 表示机器始终每秒所走的时钟打点数
    printf("ticks = %f\n",(double)(stop - start));
    printf("duration = %6.2e\n",duration);
}

double f1(int n, double a[], double x)
{
    int i;
    double p = a[0];
    for( i = 1; i < n; i++ )
    {
        p += ( a[i] * pow( x, i) );
    }
    return p;
}

double f2(int n, double a[], double x)
{
    int i;
    double p = a[n];
    for( i = n; i > 0; i-- )
    {
        p = a[ i - 1 ] + x * p;
    }
    return p;
}

int main()
{
    int i;
    double a[MAXN];
    for ( i = 0; i < MAXN; i++ )
    {
        a[i] = (double)i;
    }
    start = clock();
    for( i = 0; i < MAXK; i++ )
    {
        f1(MAXN-1, a, 1.1);
    }
    stop = clock();
    printf("This is ticks1\n");
    func();

    start = clock();   //捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick即“时钟打点”
    for( i = 0; i < MAXK; i++ )
    {
        f2(MAXN-1, a, 1.1);
    }
    stop = clock();
    printf("This is ticks2\n");
    func();

    return 0;
}

 什么是算法?

  • 算法(Algorithm)
    • 一个有限指令集
    • 接受一些输入(有时不需要输入)
    • 产生输出
    • 一定在有限步骤之后终止
    • 每条指令必须
      • 有充分明确的目标,不可有歧义
      • 计算机能处理的范围之内
      • 描述应不依赖与任何一种计算机语言以及具体的实现手段 

求最大子列和

技术图片

 

一、基本概念

标签:alt   color   指令集   def   语言   div   png   fun   oid   

原文地址:https://www.cnblogs.com/gyqqqqq/p/10549387.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!