小编Ped*_*rom的帖子

为什么函数的递归版本比C中的迭代版本更快?

我正在检查梯度下降的两个实现之间的区别,我的猜测是在编译器优化后,两个版本的算法都是等价的.

令我惊讶的是,递归版本明显更快.我没有丢弃任何版本的实际缺陷,甚至没有丢弃我测量时间的方式.你能告诉我一些见解吗?

这是我的代码:

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

double f(double x)
{
        return 2*x;
}

double descgrad(double xo, double xnew, double eps, double precision)
{
//      printf("step ... x:%f Xp:%f, delta:%f\n",xo,xnew,fabs(xnew - xo));

        if (fabs(xnew - xo) < precision)
        {
                return xnew;
        }
        else
        {
                descgrad(xnew, xnew - eps*f(xnew), eps, precision);
        }
}

double descgraditer(double xo, double xnew, double eps, double precision)
{
        double Xo = xo;
        double Xn = xnew;

        while(fabs(Xn-Xo) > precision)
        { …
Run Code Online (Sandbox Code Playgroud)

c c++ iteration recursion

7
推荐指数
2
解决办法
1334
查看次数

VS 2015 RC - 在Windows 8中尝试创建Windows 10通用应用程序时,Xaml设计器无法加载

我已经开始研究Windows 10 IoT应用程序,我对以下问题感到困惑,XAML设计器在尝试在Windows 8 VS 2015 RC中创建Windows 10通用应用程序时无法加载.在将Windows 8应用程序的空白项目XAML与新的空白项目XAMLfor windows进行比较时,它们看起来是相同的.

除非我双击我的Windows 10 Mainpage.xmal,我只看到代码,而show designer按钮不做任何事情.

c# win-universal-app windows-10 vs-2015-preview

4
推荐指数
1
解决办法
2157
查看次数